1.按照对象某个属性进行排序
rankList.stream().filter(rank->rank.getCount()>0).forEach(rank->{
List increaseRateList=new ArrayList<>();
increaseRateDTO increaseRate=new IncreaseRateDTO();
increaseRate.setChannelCompanyName(companyName);
increaseRate.setRate(getIncreaseRate(rank.getCount(),rank.getLastCount()));
increaseRateList.add(increaseRate);
});
/**
- o1,o2表示需要比较的对象,
- 正序:o1.getRate().compareTo(o2.getRate())
- 倒序:o2.getRate().compareTo(o1.getRate())
**/
increaseRateList.sort((o1,o2)->o1.getRate().compareTo(o1.getRate());//正序
increaseRateList.sort((o1,o2)->o2.getRate().compareTo(o1.getRate()));//倒序
increaseRateList.stream().limit(9).collect(Collectors.toList()));
2.数字进行排序
//对数字进行排序
List numbers=Arrays.asList(6,3,8,2,9,5,4,10,1,7);
numbers.sort(Comparator.reverseOrder());//倒序
System.out.println(“倒序:”+nums);//倒序:[10,9,8,7,6,5,6,3,2,1]
numbers.sort(Comparator.naturalOrder());//naturalOrder自然排序:正序
System.out.println(“正序:”+nums);//正序:[1,2,3,4,5,6,7,8,9,10]