package jihepaixu;
public class Student {
private String name;
private int age;
private String sex;
public Student(String name,int age,String sex){
this.name = name;
this.age = age;
this.sex = sex;
}
public Student(){
}
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 String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
package jihepaixu;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Locale;
/**
* @author weryou
*
*/
public class MyOrder {
public static List<Student> getSdts() {
List<Student> sdts = new ArrayList<Student>();
Student s1 = new Student("刘超", 23, "男");
Student s2 = new Student("杨幂", 24, "女");
Student s3 = new Student("刘备", 25, "男");
Student s4 = new Student("赵楠", 26, "女");
Student s5 = new Student("艾笑", 25, "女");
sdts.add(s1);
sdts.add(s2);
sdts.add(s3);
sdts.add(s4);
sdts.add(s5);
return sdts;
}
/**
* 按照名字拼音排序 a.b.c..........z
*/
static Comparator<Student> comparatorByName = new Comparator<Student>() {
public int compare(Student s1, Student s2) {
Collator instance = Collator.getInstance(Locale.CHINA);
return instance.compare(s1.getName(), s2.getName());
}
};
/**
* 按照年龄排序
*/
static Comparator<Student> comparatorByAge = new Comparator<Student>() {
public int compare(Student s1, Student s2) {
if (s1.getAge() > s2.getAge()) {
return 1;
} else if (s1.getAge() < s2.getAge()) {
return -1;
} else {
return 0;
}
}
};
public static void main(String[] args) {
List<Student> sdts = getSdts();
//Collections.sort(sdts, comparatorByName);
Collections.sort(sdts, comparatorByAge);
for (Student student : sdts) {
System.out.println(student.getName() + " ==== " + student.getAge() + " ===== " + student.getSex());
}
}
}