簡體   English   中英

Java:從低到高排序

[英]Java: Sort lowest-to-highest

需要使用“ if”語句來識別以下三個中最年輕/最老的名稱:我可以通過運行代碼成功列出學生,但僅需要識別三個中最年輕/最老的學生。

public class  app
   {
      public static void main(String args[])
   {
      student st1 = new student();
      st1.setFirstName("Fred");
      st1.setLastName("Fonz");
      st1.setAge(44);

      student st2 = new student();
      st2.setFirstName("John");
      st2.setLastName("Smith");
      st2.setAge(20);

      student st3 = new student();
      st3.setFirstName("Zack");
      st3.setLastName("Mills");
      st3.setAge(21);

      System.out.println("student one info = "+ st1.getFirstName()+ " "+  
       st1.getLastName()+ " "+    st1.getAge());
      System.out.println("student two info = "+ st2.getFirstName()+ " "+ 
       st2.getLastName()+ " "+    st2.getAge());
      System.out.println("student three info = "+ st3.getFirstName()+ " "+ 
       st3.getLastName()+ " "+    st3.getAge());
  }
}

我認為您需要這樣的東西:

student[] arr = new student[3];
arr[0] = st1;
arr[1] = st2;
arr[2] = st3;
int min_age = Integer.MAX_VALUE, max_age = Integer.MIN_VALUE, min_age_index = 0, max_age_index= 0;
for(int i =0; i <arr.length ; i++){
    int age = arr[i].getAge();
    if(min_age>age) {
        min_age = age;
        min_age_index = i;
    }
    if(max_age<age) {
        max_age = age;
        max_age_index = i;
    }
}
System.out.println("Youngest Student is : "+arr[min_age_index].getFirstName()+" "+arr[min_age_index].getLastName());
System.out.println("Oldest Student is : "+arr[max_age_index].getFirstName()+" "+arr[max_age_index].getLastName());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM