开发工具与关键技术:Java、myEclipse
作者:吴晓佩
撰写时间:2019年06月15日
List 是有序的集合,集合中每个元素都有对应的顺序序列。List 集合可使用重复元素,可以 通过索引来访问指定位置的集合元素(顺序索引从 0 开始),List 集合默认按元素的添加顺序设置元素的索引,比如第一个元素的索引就是 0,类似于数组。
List接口本身是 Collection 接口的子接口,所以list接口也就具备了 Collection 接口中的所有方法,也拥有自身具备的方法。
List是一个接口,所以需要通过类来实现它,list接口的常用类有(ArrayList、LinkedList、Vector)三种。如下是这三个类的相关简介:
1、 ArrayList:底层的数据结构是数组,线程不安全,查询速度快,ArrayLis代替了Vector,查询元素的速度非常快。
2、 LinkedLis:底层的数据结构是链表,线程不安全,增、删元素的速度非常快。
3、 Vector:底层的数据结构是数组, 线程安全, Vector无论查询和增删都巨慢, 已被 ArrayList 替代。
ArrayList为何取代Vector?
ArrayList 和Vector 类都是基于数组实现的 List 类,Vector 比较古老,ArrayList 是线程不安全的,而 Vector 是线程安全的,但是即使这样,也不推荐使用 Vector,因为 Collections 有方法可以得到线程安全的 ArrayList 对象。
List 集合支持对元素的增、删、改、查,代码示例如下:
迭代器遍历集合元素:
List 集合因为角标有了自己的获取元素的方式;
List集合与数组比较相似,如下是集合和数组的区别:
1:数组是固定长度的;集合可变长度的。
2:数组可以存储基本数据类型,也可以存储引用数据类型;集合只能存储引用数据类型。
3:数组存储的元素必须是同一个数据类型;集合存储的对象可以是不同数据类型。