原因:jdk6与jdk7排序算法之间存在着不兼容。
jdk6默认使用
java.util.Arrays.useLegacyMergeSort进行排序;
jdk7默认使用java.util.Arrays.TimSort(似乎)。
然后默认情况下我们只返回了1、-1,所以造成了之前的错误。
解决方案:在compare方法中添加“==”情况下的 “0”返回值。
关于排序的Comparison method violates its general contract!错误
最新推荐文章于 2024-03-29 17:54:07 发布