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);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值