java列表排序sort_java list(java list排序sort升序、降序)

javalist

List是Java中比较常用的调集类,关于List接口有许多完成类,本文就来简略介绍下其间几个重点的完成ArrayList、LinkedList和Vector之间的联系和差异。

List是一个接口,它承继于Collection的接口。它代表着有序的队列。当我们讨论List的时分,一般都和Set作比较。

List中元素能够重复,并且是有序的(这儿的有序指的是依照放入的次序进行存储。如依照次序把1,2,3存入List,那么,从List中遍历出来的次序也是1,2,3)。

Set中的元素不能够重复,并且是无序的(从set中遍历出来的数据和放入次序没有联系)。

下面是Java中的调集类的联系图。从中能够大致了解调集类之间的联系

ArrayList、LinkedList和Vector之间的差异

从上图能够看出,ArrayList、LinkedList和Vector都完成了List接口,是List的三种完成,所以在用法上十分相似。他们之间的首要差异体现在不同操作的功能上。后面会详细分析。

ArrayList

ArrayList底层是用数组完成的,能够以为ArrayList是一个可改动巨细的数组。跟着越来越多的元素被添加到ArrayList中,其规划是动态添加的。

LinkedList

LinkedList底层是经过双向链表完成的。所以,LinkedList和ArrayList之前的差异首要就是数组和链表的差异。

数组中查询和赋值比较快,由于能够直接经过数组下标访问指定方位。

链表中删除和添加比较快,由于能够直接经过修正链表的指针(Java中并无指针,这儿能够简略理解为指针。其

你可能感兴趣的:(java列表排序sort)