当前位置: 代码迷 >> 综合 >> JDK1.8以上版本,Collections.sort实现自定义对LinkLis的排序必须要写明泛型的类型,不然报错
  详细解决方案

JDK1.8以上版本,Collections.sort实现自定义对LinkLis的排序必须要写明泛型的类型,不然报错

热度:67   发布时间:2023-12-13 10:55:50.0
Collections.sort(list, new Comparator() {@Overridepublic int compare(Object o1, Object o2) {// TODO Auto-generated method stubreturn 0;}
});

以上是之前默认的排序写法,如果不表明类型,就会默认为Object类型。

下面是对linkList类型进行排序,在之前JDK版本似乎不需要指明泛型的类型,JDK1.8版本之后需要明确标出泛型的类型。

Collections.sort(list, new Comparator<LinkedList<Integer>>() {@Overridepublic int compare(LinkedList<Integer> o1, LinkedList<Integer> o2) {return o1.size() - o2.size();}});

以上代码在Comparator函数指明了要比较的参数的类型为LinkList<Integer>类型,不然会报错。上面方法是升序排序。

  相关解决方案