Java:Collections.sort和Arrays.sort的区别

Collections.sort和Arrays.sort的区别

Collections.sort专门给List排序,而Arrays.sort专门给数组进行排序

Collections.sort排序底层调用的是Arrays.sort方法。如下面的部分源码:

public class Collections {
    
    
	 public static <T> void sort(List<T> list, Comparator<? super T> c) {
    
    
	        list.sort(c);
	    }
}

public class ArrayList<E> extends AbstractList<E> 
	implements List<E>, RandomAccess, Cloneable, java.io.Serializable
{
    
    
	@Override
    @SuppressWarnings("unchecked")
    public void sort(Comparator<? super E> c) {
    
    
        final int expectedModCount = modCount;
        Arrays.sort((E[]) elementData, 0, size, c);
        if (modCount != expectedModCount) {
    
    
            throw new ConcurrentModificationException();
        }
        modCount++;
    }
}

总结

如果我们需要对一个对象数组进行排序,我们可以使用Arrays.sort()方法。

如果我们需要排序一个对象列表,我们可以使用Collections.sort()方法。

猜你喜欢

转载自blog.csdn.net/weixin_45525272/article/details/125275913