Comparator挽救比較器
挽救比較器
類已經定義了不能修改類
class Persion{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Persion(String name,int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "姓名:" + this.name + ",年齡:" + this.age;
}
}
class PersionComparator implements Comparator<Persion>{
@Override
public int compare(Persion arg0, Persion arg1) {
// TODO Auto-generated method stub
return arg0.getAge()-arg1.getAge();
}
}
public class CompareTor {
public static void main(String args[]) {
Persion per[] =new Persion [] {
new Persion("小李",39),
new Persion("小茗",19),
new Persion("小紅",33)
};
Arrays.sort(per,new PersionComparator());
System.out.println(Arrays.toString(per));
}
}
在進行對象數組排序的過程中需要使用比較器,比較器有兩個
java.lang.Comparable是在類定義的時候默認實現好的接口,裏面提供了一個compareTo()
java.util.Comparator需要單獨定義一個排序的配角規則類裏面有兩個方法compare和equals()
類已經定義了不能修改類
class Persion{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Persion(String name,int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "姓名:" + this.name + ",年齡:" + this.age;
}
}
class PersionComparator implements Comparator<Persion>{
@Override
public int compare(Persion arg0, Persion arg1) {
// TODO Auto-generated method stub
return arg0.getAge()-arg1.getAge();
}
}
public class CompareTor {
public static void main(String args[]) {
Persion per[] =new Persion [] {
new Persion("小李",39),
new Persion("小茗",19),
new Persion("小紅",33)
};
Arrays.sort(per,new PersionComparator());
System.out.println(Arrays.toString(per));
}
}
在進行對象數組排序的過程中需要使用比較器,比較器有兩個
java.lang.Comparable是在類定義的時候默認實現好的接口,裏面提供了一個compareTo()
java.util.Comparator需要單獨定義一個排序的配角規則類裏面有兩個方法compare和equals()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.