package demo;import java.util.ArrayList;import java.util.List;import java.util.ListIterator;/** * List列表及相关方法 * * @author Created by yukaiji on 2017年2月28日 */public class CollectionsList { static List<String> list = new ArrayList<>(); public static void main(String[] args) { // ArrayList是基于数组的存储,默认构造初始大小为10. elementData为存储的元素 // ArrayList可自动扩容。 // Vector在方法上添加了同步操作. // LinkedList是基于链表的顺序表,与ArrayList相比,插入与删除的效率很高。不需要扩容和移动元素。 // 但是随着LinkedList容量增加,访问效率会降低,因为要从头遍历链表。 // LinkedList的操作都是基于Iterator迭代器来实现. list.add("1"); list.add("2"); list.add("3"); list.add("4"); ListIterator<String> aList= list.listIterator(); while (aList.hasNext()) { String string = (String) aList.next(); System.out.PRintln(string); } } public static void add() { // add() 通过ensureCapacity()扩充list大小。然后在size++位置插入 // add(int index, E element)任意位置添加元素,相应的元素后移,保持链表的特性。 list.add("1"); list.add(0, "2"); } public static void ensureCapacity() { // 保证链表的大小,如果容量不足则扩容 // 比较消耗性,如果预知List大小,则在创建实例时设定大小 }}
新闻热点
疑难解答