sunny123456

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

LinkedList用法详解
https://blog.csdn.net/u013970897/article/details/106877472

一、LinkedList简单介绍

               LinkedList是List接口的实现类,因此也实现了List的方法。但LinkedList是采用链表结构的方式来实现List接口的,因此在进  行insert 和remove动作时效率要比ArrayList高。

二、LinkedList的用法介绍

      1、add和push

                   通过这两种方法均可对LinkedList进行元素添加,但不同点在于add是在链表后面添加一个元素,而push是在链表前               面 添加一个元素,这是添加顺序上的区别。

            其他添加方法介绍:

            boolean add(E e):在链表后添加一个元素,如果成功,返回true,否则返回false; 
            void addFirst(E e):在链表头部插入一个元素; 
            addLast(E e):在链表尾部添加一个元素; 
            void add(int index, E element):在指定位置插入一个元素。

          下面是代码演示:

          

         对应的输出结果:

        

    2、get方法

         get(int index):按照下边获取元素; 
         getFirst():获取第一个元素; 
         getLast():获取最后一个元素;

        下面是代码演示:

        

       输出结果:

       

   3、remove 、pop、poll移除方法

       remove();移除链表中第一个元素; 
       boolean remove(Object o):移除链表中指定的元素; 
      remove(int index):移除链表中指定位置的元素; 
      removeFirst():移除链表中第一个元素,与remove类似; 
      removeLast():移除链表中最后一个元素; 
      boolean removeFirstOccurrence(Object o):移除链表中第一次出现所在位置的元素; 
      boolean removeLastOccurrence(Object o):移除链表中最后一次出现所在位置的元素;

      pop():与removeFirst一样,实际上它就是removeFirst; 
      poll():查询并移除第一个元素;

     下图是代码以及结果演示:

     

    从上图中可以看到,当链表为空时poll返回null,而pop产生异常。

  4、peek获取

     peek():获取第一个元素,但是不移除; 
     peekFirst():
获取第一个元素,但是不移除; 
     peekLast():
获取最后一个元素,但是不移除;

    下图是代码及结果演示:

    

  5、offer插入方法

   boolean offer(E e):在链表尾部插入一个元素; 
   boolean offerFirst(E e):与addFirst一样,实际上它就是addFirst; 
   boolean offerLast(E e):与addLast一样,实际上它就是addLast;

 6、其他方法

  contains(Object obj):判断链表中是否包含某个元素,返回值为true或false;

  element():获得链表的第一个元素但不删除

  set(int position,Object obj):将链表中第position个元素修改为obj;

  subList(int start,int end):取中间元素,但顾头不顾尾;

 

 

posted on 2023-03-23 19:43  sunny123456  阅读(74)  评论(0编辑  收藏  举报