返回列表 發帖
  1. import java.util.ArrayList;
  2. import java.util.Collection;
  3. import java.util.Comparator;
  4. public class Ch01 {
  5.         ArrayList<Student> stu=new ArrayList<>();
  6.         Ch01()
  7.         {
  8.                 stu.add(new Student(4,"大雄",60));
  9.                 stu.add(new Student(1,"小叮噹",90));
  10.                 stu.add(new Student(3,"宜靜",100));
  11.                 stu.add(new Student(2,"阿福",70));
  12.                 stu.add(new Student(5,"技安",20));
  13.                 System.out.println("原始資料");
  14.                 show();
  15.                
  16.                 Collections.sort(stu,new Mycomparator2());
  17.                 System.out.println("依座號排序:");
  18.                 show();
  19.                 Collections.sort(stu,new Mycomparator1());
  20.                 System.out.println("依座號遞減:");
  21.                 show();
  22.         }
  23.         void show()
  24.         {
  25.                 System.out.println("座號\t姓名\t分數");
  26.                 System.out.println("--------------------");
  27.                 for(int i=0;i<stu.size();i++)
  28.                         System.out.println(stu.get(i).num+"\t"+stu.get(i).name+"\t"+stu.get(i).score);
  29.                 System.out.println();
  30.         }
  31.         class Mycomparator2 implements Comparator<Student>
  32.         {
  33.                 public int compare(Student o1,Student o2) {
  34.                         return o1.num-o2.num;
  35.                 }
  36.                 class Mycomparator1 implements Comparator<Student>
  37.                 {
  38.                         public int compare(Student o1,Student o2) {
  39.                                 return o2.num-o1.num;
  40.                         }
  41.         }
  42.         class Student
  43.         {
  44.                 int num , score;
  45.                 String name;
  46.                
  47.                 Student(int n,String m,int s)
  48.                 {
  49.                         num=n;
  50.                         name=m;
  51.                         score=s;
  52.                 }
  53.         }
  54.         public static void main(String[] args) {
  55.                 new Ch01();
  56.         }

  57. }
複製代碼

TOP

返回列表