我有一个我的用户定义类的列表。
class Customer{
Integer age;
String name;
//getter & setter
}
Collections.sort(customerList, new Comparator <Customer>() {
public int compare(Customer o1, Customer o2) {
// TODO Auto-generated method stub
if(o1.getAge()!=null && o2.getAge() != null)
return o1.getDistance().compareTo(o2.getDistance());
else
return 1;
}
});
现在我的年龄变量可能有一个空值或客户的年龄。所有空值都应附加在末尾,其余值应按升序或降序排序(一切正常)?
但是这段代码抛出了一个异常:
java.lang.IllegalArgumentException: Comparison method violates its general contract!
请告诉我应该怎么做?提前致谢。