java.lang.IllegalArgumentException: Comparison method violates its general contract!
这个错误就是写比较器的时候少写了返回值的情况:
比如:
Collections.sort(list, new Ordering<QtmSysUserListDto>() { @Override public int compare(QtmSysUserListDto arg0, QtmSysUserListDto arg1) { if(arg0.getFlag().length()>arg1.getFlag().length()){ return -1; }else if(arg0.getFlag().length()==arg1.getFlag().length()){ return 0; } return 1; } });
一定不要把返回0这行代码忽悠掉: