一个例子
package sortt; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List; public class HomeWork { public static void main(String[] args) {
List<Emp> ems =new ArrayList<Emp>();
ems.add(new Emp("Terry", 25, 'm', 6000));
ems.add(new Emp("Allen", 21, 'f', 4000));
ems.add(new Emp("Smith", 23, 'm', 3000));
System.out.println(ems); //[(Terry,25,m,6000.0), (Allen,21,f,4000.0), (Smith,23,m,3000.0)]
Comparator<Emp> com=new Comparator<Emp>(){ //匿名内部类 public int compare(Emp o1, Emp o2) {
// TODO Auto-generated method stub
return (int) (o1.getSalary()-o2.getSalary());
}
};
Collections.sort(ems,com);
System.out.println(ems); //[(Smith,23,m,3000.0), (Allen,21,f,4000.0), (Terry,25,m,6000.0)] } }
Emp.java
class Emp{
private String name;
private int age;
private char gender;
private double salary;
public Emp(String name, int age, char gender, double salary) {
super();
this.name = name;
this.age = age;
this.gender = gender;
this.salary = salary;
}
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 char getGender() {
return gender;
}
public void setGender(char gender) {
this.gender = gender;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public String toString(){
return "("+name+","+ age+"," +gender+"," + salary+")"; } }