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

Collections.sort(list, new Comparator() {
	@Override
	public int compare(Object o1, Object o2) {
		// TODO Auto-generated method stub
		return 0;
	}
});

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

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

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

});

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

你可能感兴趣的:(java)