List的ArrayList集合和LinkedList集合

  • ArrayList
    • ArrayList是线性顺序存储的,是一种线性表
    • 它的特性和数组很接近,数组大小是不变的,而ArrayList的大小是可以动态改变的
  • LinkedList
    • 是数据结构中链表的java实现
    • 相对于List来说,LinkedList最主要的功能方面的增强是可以在List的头部和尾部添加、删除、取得元素,直接提供了这些方法的实现。所以它可以非常方便的实现我们数据结构中的常见的Stack(栈)、queue(队列)等

package JavaSE.集合.List接口;

import java.util.*;

public class TestList {
    public static void main(String[] args) {
        List<String> list1 = new ArrayList();
        list1.add("wqr");
        list1.add("aaa");
        list1.add("bbb");
        list1.add("ccc");

/**
 *
 * ArrayList集合
 */
        List list2 = new ArrayList();
        list2.add("wqr1");
        list2.add("aaa");
        list2.add("aaa1");
        list2.add("bbb1");
        list2.add("ccc1");


//        System.out.println(list1.get(1));//返回指定的索引为1的值aaa
        System.out.println(list1);
        System.out.println(list2);
//        list1.addAll(list2);集合中加入另外一个集合对象
//        System.out.println(list1);//[wqr, aaa, bbb, ccc, wqr1,aaa, aaa1, bbb1, ccc1]

//        list1.addAll(3,list2);集合中加入另外一个集合对象   在索引为3的位置添加
//        System.out.println(list1);//[wqr, aaa, bbb, wqr1,aaa, aaa1, bbb1, ccc1, ccc]

//        list1.removeAll(list2);清空指定集合
//        System.out.println(list1);//[wqr, bbb, ccc]

//        System.out.println(list1.size());//list1目前的容纳元素个数为4

//        System.out.println(list1.isEmpty());//集合是否为空

        System.out.println(list1.remove(1));//aaa
        System.out.println("删除后\t" + list1);// 删除后 [wqr, bbb, ccc]
        System.out.println("=======================增强for遍历=================================");
        for (Object o : list1) {
            System.out.println(o);
        }
        System.out.println("=======================迭代器=正序================================");
        Iterator listIter = list1.listIterator();
        while (listIter.hasNext()) {
            System.out.println(listIter.next());
        }

        System.out.println("=======================迭代器逆序=================================");
        ListIterator listIter1 = list1.listIterator(list1.size());
        while (listIter1.hasPrevious()) {
            System.out.println("listIter.previous()\t" + listIter1.previous());
        }


/**
 *
 * LinkList集合
 */
        LinkedList list3 = new LinkedList();
        list3.add("wqr");
        list3.add("aaa");
        list3.add("bbb");
        list3.add("ccc");

        System.out.println(list3.getFirst());//查询第一个位置
        System.out.println(list3.getLast());//查询第一个位置
        list3.addFirst("头部");//添加第一个位置
        list3.addLast("尾部");//添加最后一个位置
        System.out.println(list3);
        list3.removeFirst();//删除头部
        list3.removeLast();//删除尾部
        System.out.println(list3);
    }
}

 

猜你喜欢

转载自blog.csdn.net/wqr111/article/details/118385204