• List类型

    Java List一共三个实现类:分别是ArrayList、Vector和LinkedList。

    类型说明
    ArrayListArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要讲已经有数组的数据复制到新的存储空间中。当从ArrayList的中间位置插入或者删除元素时,需要对数组进行复制、移动、代价比较高。因此,它适合随机查找和遍历,不适合插入和删除
    VectorVector与ArrayList一样,也是通过数组实现的,不同的是它支持线程的同步,即某一时刻只有一个线程能够写Vector,避免多线程同时写而引起的不一致性,但实现同步需要很高的花费,因此,访问它比访问ArrayList慢。
    LinkedListLinkedList是用链表结构存储数据的,很适合数据的动态插入和删除,随机访问和遍历速度比较慢。另外,他还提供了List接口中没有定义的方法,专门用于操作表头和表尾元素,可以当作堆栈、队列和双向队列使用。


    1. ArrayList在内存不够时默认是扩展50% + 1个,Vector是默认扩展1倍。

    2. Vector属于线程安全级别的,但是大多数情况下不使用Vector,因为线程安全需要更大的系统开销。

    3. 一般使用ArrayList和LinkedList比较多


    ArrayList

    ArrayList是最常用的List实现类。ArrayList内部是通过数组实现的。所以只适合遍历或者随机查找。

    常用的接口:

    1. list.add(int index,E element) 将数据新增到指定位置

    2. list.add(E element) 将指定的元素添加到此列表的尾部。

    3. list.addAll(Collection<? extendsE> c) 按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。

    4. list.addAll(int index,Collection<? extendsE> c) 从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。

    5. list.clear() 移除此列表中的所有元素。

    6. list.set(int index,E element)  用指定的元素替代此列表中指定位置上的元素。

    7. list.get(int index) 返回此列表中指定位置上的元素。

    8. list.size() 查看元素总个数

    使用实例:

    1. @RequestMapping(value="/test")  

    2. @ResponseBody  

    3. public String test() {  

    4.    List<integer> list = new ArrayList<integer>(); // 实例化一个数组List int类型  

    5.    for (int j = 0; j < 20; j++) {  

    6.        list.add(j); //往list中新增数据  

    7.    }  

    8.    System.out.print(list.size()); //打印出list长度  

    9.    list.remove(1); //删除key为1的list上的数据  

    10.      

    11.    //一种遍历方法  

    12.    for (int i = 0; i < list.size(); i++) {  

    13.        System.out.print(list.get(i) + "\r\n"); //获取值  

    14.    }  

    15.      

    16. java教程,自学编程,青软培训