一、得到需要排序的list
for(String meter :meterList){
//根据电表编号获取计量点名称
String mpName = cusMeterDao.selectMpNameByMeter(meter);
PieReturn pieReturn = new PieReturn();
BigDecimal bigDecimal = stringBigDecimalMap.get(meter);
if(bigDecimal!=null ){
/*if(bigDecimal.compareTo(new BigDecimal(0))<0){//发现负值强制归零
bigDecimal=new BigDecimal(0);
}*/
pieReturn.setValue(MathUtils.towDecimal(bigDecimal));
pieReturn.setName(mpName);
dataList.add(pieReturn);
}
}
二、对list进行排序-排序规则是自定义的一个规则,从对象中去除一个属性值进行比较大小
//对返回的list进行排序
Collections.sort(dataList,new Comparator<PieReturn>(){ //排序
@Override
public int compare(PieReturn o1, PieReturn o2) {
if(o1.getValue()!=null && o2.getValue()!=null){
return o1.getValue().compareTo(o2.getValue());
}else {
return -1;
}
}
});