public class Test {
private Integer Id;
private String Name;
private Integer IdCard;
public Integer getId() {
return Id;
}
public void setId(Integer id) {
Id = id;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public Integer getIdCard() {
return IdCard;
}
public void setIdCard(Integer idCard) {
IdCard = idCard;
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
Test test1=new Test();
test1.setId(5);
test1.setName("张三");
test1.setIdCard(55);
Test test2=new Test();
test2.setId(4);
test2.setName("李四");
test2.setIdCard(33);
Test test3=new Test();
test3.setId(5);
test3.setName("王五");
test3.setIdCard(77);
Test test4=new Test();
test4.setId(4);
test4.setName("陈六");
test4.setIdCard(11);
List<Test> testList=new ArrayList<Test>();
testList.add(test1);
testList.add(test2);
testList.add(test3);
testList.add(test4);
Collections.sort(testList, Comparator.comparing(Test::getId));
Collections.sort(testList, Comparator.comparing(Test::getId).reversed());
Collections.sort(testList, Comparator.comparing(Test::getId).reversed().thenComparing(Test::getIdCard));
Collections.sort(testList, Comparator.comparing(Test::getId).thenComparing(Test::getIdCard));
Collections.sort(testList, Comparator.comparing(Test::getId).thenComparing(Test::getIdCard).reversed());
testList.sort(( ord1,ord2) -> ord2.getId().compareTo(ord1.getId()));
testList.sort(( Test ord1, Test ord2) -> ord2.getId().compareTo(ord1.getId()));
testList.stream().forEach(test -> System.out.println(test.getId()+"/" +test.getIdCard()+"/"+ test.getName()));
}
}