小编Moh*_*han的帖子

删除之前创建的CVS标记

请让我知道如何删除已经从eclipse创建的CVS标记.

如果删除了标记,是否可以使用相同名称创建新标记?

eclipse cvs

8
推荐指数
1
解决办法
1万
查看次数

java.lang.IllegalArgumentException:比较方法违反了其一般合同(不可重复)

我试图重现这个异常(java.lang.IllegalArgumentException:比较方法违反了它的一般合同!),因为我需要调试一段代码,但下面的代码永远不会抛出它,

try {
  ArrayList al = new ArrayList();
  for (int i = 1; i <= 36; i++) {
    TypeAdapterSort t = new TypeAdapterSort();
    t.order = i;
    al.add(t);
  }
  System.out.println(al.size());
  Collections.sort(al, new Comparator() {
    public int compare(Object o1, Object o2) {
      TypeAdapterSort tas1 = (TypeAdapterSort) o1;
      TypeAdapterSort tas2 = (TypeAdapterSort) o2;
      if (tas1.order < tas2.order)
        return -1;
      else
        return 1;
    }
  });

} catch (Exception e) {
  System.out.println(e);
}
Run Code Online (Sandbox Code Playgroud)

此外,当我检查JDK代码时,似乎只有当要排序的集合的大小大于32时,Collections.sort方法才会抛出此异常.应在代码块中进行哪些更改,以便Collections.sort抛出此异常.

java collections comparator

0
推荐指数
1
解决办法
9170
查看次数

标签 统计

collections ×1

comparator ×1

cvs ×1

eclipse ×1

java ×1