返回列表 發帖
  1. import java.util.ArrayList;
  2. import java.util.Comparator;
  3. import java.util.Collections;

  4. public class cccc {

  5.         ArrayList<Student> sa=new ArrayList<Student>();

  6.         cccc()
  7.         {
  8.                 sa.add(new Student(4, "大雄", 60));
  9.                 sa.add(new Student(1, "小叮噹", 90));
  10.                 sa.add(new Student(3, "宜靜", 100));
  11.                 sa.add(new Student(2, "阿福", 70));
  12.                 sa.add(new Student(5, "技安", 20));

  13.                 System.out.println("原始資料:");
  14.                 show();
  15.                
  16.                 Collections.sort(sa, new C());
  17.                 System.out.println("依座號遞增排序:");
  18.                 show();
  19.                
  20.                 Collections.sort(sa, new C2());
  21.                 System.out.println("依分數遞減排序:");
  22.                 show();
  23.         }

  24.         void show()
  25.         {
  26.                 System.out.println("座號\t姓名\t分數");
  27.                 System.out.println("---------------------");
  28.                 for(int i=0;i<sa.size();i++)
  29.                         System.out.println(sa.get(i).num+"\t"+sa.get(i).name+"\t"+sa.get(i).score);
  30.                 System.out.println();
  31.         }

  32.         class C implements Comparator<Student>
  33.         {
  34.                 public int compare(Student s1, Student s2)
  35.                 {
  36.                         return s1.num-s2.num;
  37.                 }
  38.         }

  39.         class C2 implements Comparator<Student>
  40.         {
  41.                 public int compare(Student s1, Student s2)
  42.                 {
  43.                         return s2.score-s1.score;
  44.                 }
  45.         }

  46.         class Student
  47.         {
  48.                 int num, score;
  49.                 String name;

  50.                 Student(int n, String m, int s)
  51.                 {
  52.                         num=n;
  53.                         name=m;
  54.                         score=s;
  55.                 }
  56.         }

  57.         public static void main(String[] args) throws Exception{
  58.                 new cccc();
  59.         }
  60. }
複製代碼

TOP

返回列表