我如何显示两个事件中参与者的价值

时间:2015-11-09 01:58:49

标签: java arrays inheritance

Q值。创建名为Participant的类,其中包含名称,年龄和街道地址的字段。包括为每个字段分配参数值的构造函数和返回包含所有值的String的toString()方法。

还包括一个equals()方法,如果它们在所有三个字段中具有相同的值,则确定两个参与者是相等的。

创建一个包含两个阵列的应用程序,每个阵列至少包含5个参赛者 - 一个参加者参加迷你马拉松比赛,另一个参赛者参加跳水比赛。向用户提示两个事件中的参与者将文件保存为Participant.java和TwoEventParticipants.java。* /

到目前为止,这是我的代码。 如何显示两个活动中参加者的价值?

import javax.swing.JOptionPane;
    import java.util.*;

    public class TwoEventParticipants {
         private  static Participant mini[] = new Participant[2];
         private  static Participant diving[] = new Participant[2];

        public static void main(String[] args) {

            String name="";;
              String add="";
              int age=0;
            Participant p=new Participant(name, age, add);
            Participant p1=new Participant(name, age, add);
            setParticipant();
        setParticipant1();

            displayDetail();
            displayDetail1();
            //Arrays.sort(p1);
            if (p.equals(p1)){

                 System.out.println(p);
            }else{
                System.out.println(p1);

            }

        }
        public static void setParticipant(){
            for (int x = 0; x < mini.length; x++) {

             System.out.println("Enter loan details for customer " + (x + 1) + "...");

    //Character loanType=getLoanType();
            //String loanType=getLoanType();
            String name=getName();
              String add=getAdd();
              int age=getAge();
             System.out.println();
             mini[x] = new Participant(name, age, add); //<--- Create the object with the data you collected and put it into your array.

            }
            }


        public static void setParticipant1(){

                for (int y = 0; y < diving.length; y++) {

             System.out.println("Enter loan details for customer " + (y + 1) + "...");

            String name=getName();
              String add=getAdd();
              int age=getAge();
             System.out.println();

             diving[y] = new Participant(name, age, add);
            }
        }
            // Participant p=new Participant(name,age,add);
        //displayDetails();
            // System.out.println(    p.toString());
        public static void displayDetail() {

             // for (int y = 0; y < diving.length; y++) {
            System.out.println("Name       \tAge   \tAddress");
          //Participant p=new Participant(name,age,add);
            for (int x = 0; x < mini.length; x++) {

                System.out.println(mini[x].toString());



                //    System.out.println(diving[y].toString());
            }
        }



        public static void displayDetail1() {


             System.out.println("Name       \tAge   \tAddress");
             for (int y = 0; y < diving.length; y++) {
                 System.out.println(diving[y].toString());
             }
        }

               public static String getName() {
                  Scanner sc = new Scanner(System.in);
                  String name;
                 System.out.print(" Participant  name: ");
                  return name = sc.next();
               }

             // System.out.print(" Participant  name: ");
             // name = sc.next();
              public static int getAge() {
    int age;
                   System.out.print(" Enter age ");
                     Scanner sc=new Scanner(System.in);;
                    return age= sc.nextInt();
              }
             public static String getAdd() {
                 String add;

                Scanner sc=new Scanner(System.in);;
           System.out.print("Enter  Address: ");
           return add=sc.next(); 
             }


    }

            Participant with fields for a name, age, and street address   
    //
    public class Participant {


        private String name;
        private int age;
        private String address;


        public Participant(String name, int age, String address) {

            this.name = name;
            this.age = age;
        this.address = address;
        }


        @Override
        public String toString() {
            return name + "      " + age + "       " + address    ;
        }

        // include an equals() method that determines two Participants are equal
        public boolean equals(Participant[] name,Participant[] age,Participant[] add) {
            if (this.name.equals(name)  && this.address.equals(address)&& age == age){
                return true;
            }
            else{
                return false;
            }
        }
    }

1 个答案:

答案 0 :(得分:-1)

这适合您:

for(Participant p : mini){
   if(diving.contain(p)){ 
       System.out.pringtln(p.toString()) ; 
   }
}