原文:属性排序报错:java.lang.IllegalArgumentException: Comparison method violates its general contract!

对一个集合里的对象按照某属性排序时,遇到问题: java.lang.IllegalArgumentException:Comparisonmethodviolatesitsgeneralcontract 后面查了资料后发现,jdk . 和jdk . 的排序算法有所更改,具体的可以自己去研究,解决办法:JDK . 的实现compare方法必须有一个返回 的情况,即必须判断两对象属性是否相等 千万别漏 ...

2020-04-16 11:22 0 672 推荐指数:

查看详情

Comparison method violates its general contract!

今天一个群里哥们儿碰到一个异常,抛到群里求解答,他的代码如下图: 抛出的异常信息为: Java代码 java.lang.IllegalArgumentException: Comparison method ...

Wed Jul 19 17:42:00 CST 2017 0 10916
Comparison method violates its general contract!

  废话少说,直接上报错信息(如下图)   最近公司app上有个列表时而报错,时而不报,复现问题不是很容易,翻看了下日志才知道是排序的地方有问题,这还是我第一次遇到,具体定位:Collections.sort(xxx), 于是再看对应的compareTo方法 ...

Thu Nov 02 18:26:00 CST 2017 0 2635
Comparison method violates its general contract

今天一同事采用Collections.sort 来对文件进行排序,出现 Comparison method violates its general contract 异常, 找了好久,才发现是实现接口Comparator 的类有问题, 在compare中没有处理好两个比较的对象相等的情况 ...

Wed May 09 00:24:00 CST 2012 0 19191
记录线上APP一个排序比较引发的崩溃 Comparison method violates its general contract!

最近在做产品需求的时候上线了一个新的产品需求,给用户多了一种新的排序排序规则,更加方便用户找到自己想要的东西。新版本发布后,QA 给我发了一个 线上崩溃 bug 链接,具体内容如下: 看到上面的链接,我有点懵逼了,就这排序还能给我搞出 bug 来?看到抛出的异常信息,也没有见过,于是直接 ...

Mon Nov 15 06:33:00 CST 2021 0 296
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM