java.lang.IllegalArgumentException: Comparison method violates its general contract!
来源:互联网 发布:sql select from as 编辑:程序博客网 时间:2024/06/06 01:11
异常信息
java.lang.IllegalArgumentException: Comparison method violates its general contract!at java.util.TimSort.mergeLo(TimSort.java:747)at java.util.TimSort.mergeAt(TimSort.java:483)at java.util.TimSort.mergeCollapse(TimSort.java:410)at java.util.TimSort.sort(TimSort.java:214)at java.util.TimSort.sort(TimSort.java:173)at java.util.Arrays.sort(Arrays.java:659)at java.util.Collections.sort(Collections.java:217)
Comparison method violates its general contract
http://iamyida.iteye.com/blog/2255804
图解JDK7的Comparison method violates its general contract异常
http://blog.2baxb.me/archives/993
问题原因:
Android 手机中使用的JDK是1.7版本,而此版本中修改了Collections.sort 的排序算法导致此问题
解决方案:
1. 需要判断比对的对象是否为空(不判断也没发现有什么问题)
2. 不能返回正整数、负整数、0, 而应该返回1 , -1, 0
3. 必须保证返回值会return 这3种值
4. 必须保证满足对等3定律
0 0
- java.lang.IllegalArgumentException: Comparison method violates its general contract!
- java.lang.IllegalArgumentException: Comparison method violates its general contract!
- java.lang.IllegalArgumentException: Comparison method violates its general contract!
- Java 异常解决之java.lang.IllegalArgumentException: Comparison method violates its general contract!
- Java 错误解决之java.lang.IllegalArgumentException: Comparison method violates its general contract
- java.lang.IllegalArgumentException: Comparison method violates its general contract!的解决方法
- 关于IllegalArgumentException: Comparison method violates its general contract!
- IllegalArgumentException: Comparison method violates its general contract错误详细内容
- 关于JDK7的IllegalArgumentException:Comparison method violates its general contract
- Comparison method violates its general contract 解决办法
- Comparison method violates its general contract
- Comparison method violates its general contract
- Comparison method violates its general contract!
- Comparison method violates its general contract!
- Comparison method violates its general contract
- Comparison method violates its general contract!
- Comparison method violates its general contract!
- Comparison method violates its general contract!
- 五月任务
- 关于 tomcat 集群中 session 共享的三种方法
- 关于启用 HTTPS 的一些经验分享
- JAVA中的枚举类
- swift 柯里化
- java.lang.IllegalArgumentException: Comparison method violates its general contract!
- Eclipse 安装EGit失败
- 透彻理解 group by 子句
- BadgeView控件使用教程
- Android布局
- java中的泛型
- 一些小技巧
- 图的邻接链表存储
- php中explode与split的区别介绍