阅读背景:

Android碰到 "Comparison method violates its general contract" 异常的解决方法

来源:互联网 

1.概述:


 最近在对信息进行排序时,做了一个简单地比较器,当时在运行时并没有报错,但是,后台数据刷新时,我这边就出了问题。在jdk1.6中,当我们比较的内容的值相同时,使用java自己的排序方法"Collections.sort()"是很正常的,可是到了jdk1.7,问题就会出现了,这种情就不再允许了,这是因为JDK7底层的排序算法换了,JDK7中的Collections.Sort方法实现中要求,如果两个值是相等的,那么compare方法需要返回0,否则 可能 会在排序时抛错(这个异常并不是频繁出现的),而JDK6是没有这个限制的。所以在比较时,我们必须要考虑两个值相等的情况,而且返回的值需要为   0. 最近在对信息进行排序时,做了一个简单地比较器,当时在运行时并没有报错,




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: