當前位置:成語大全網 - 新華字典 - java 怎麽用compare比較兩個漢字順序

java 怎麽用compare比較兩個漢字順序

import?java.text.Collator;

import?java.util.Arrays;

import?java.util.Locale;

public?class?Student?implements?Comparable<Student>?{

public?static?void?main(String[]?args)?{

Student[]?students?=?new?Student[5];

students[0]?=?new?Student("趙六",?70);

students[2]?=?new?Student("王五",?85);

students[1]?=?new?Student("張三",?99);

students[3]?=?new?Student("李四",?85);

students[4]?=?new?Student("孫七",?75);

Arrays.sort(students);

for?(int?i?=?0;?i?<?students.length;?i++)?{

Student?student?=?students[i];

System.out.println(student.name?+?"?:?"?+?student.score);

}

}

private?String?name;

private?int?score;

public?Student()?{

}

public?Student(String?name,?int?score)?{

this.name?=?name;

this.score?=?score;

}

public?String?getName()?{

return?name;

}

public?void?setName(String?name)?{

this.name?=?name;

}

public?int?getScore()?{

return?score;

}

public?void?setScore(int?score)?{

this.score?=?score;

}

public?int?compareTo(Student?other)?{

if?(this.score?!=?other.score)?{

return?other.score?-?this.score;

}?else?{

Collator?instance?=?Collator.getInstance(Locale.CHINA);

return?instance.compare(this.name,?other.name);

}

}

}public?class?StudentComparator?implements?Comparator<Student>?{

public?int?compare(Student?o1,?Student?o2)?{

if?(o1.getScore()?!=?o2.getScore())?{

return?o2.getScore()?-?o1.getScore();

}?else?{

Collator?instance?=?Collator.getInstance(Locale.CHINA);

return?instance.compare(o1.getName(),?o2.getName());

}

}

}