Java:Collections.sort和Arrays.sort的区别
Posted 流楚丶格念
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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()方法。
以上是关于Java:Collections.sort和Arrays.sort的区别的主要内容,如果未能解决你的问题,请参考以下文章
关于Java中Collections.sort和Arrays.sort的稳定性问题
39-java中Arrays.sort 和 collections.sort()总结
Java—集合框架 Collections.sort()Comparable接口和Comparator接口
java Collections.sort()实现List排序的默认方法和自定义方法