美文网首页
LinkedList的用法

LinkedList的用法

作者: 刘昱涵 | 来源:发表于2019-02-25 01:23 被阅读0次

    如何构造

    // 默认构造函数
    LinkedList()
    // 创建一个LinkedList,保护Collection中的全部元素。
    LinkedList(Collection<? extends E> collection)

    例如

    import java.util.Arrays;
    import java.util.LinkedList;
    
    public class Test {
        public static void main(String[] args){
            LinkedList<String> textOne = new LinkedList<>();
            String[] array = {"a","b","c","d"};
            LinkedList<String> textTwo = new LinkedList<>(Arrays.asList(array));
            System.out.println(textOne);
            System.out.println(textTwo);
        }
    }
    

    结果为

    []
    [a, b, c, d]

    常用方法

    1、获取其首位或末位元素
    List.getFirst()
    List.getLast()
    以上面创建的例子来说

    System.out.println("链表的第一个元素是 : " + textTwo.getFirst());  
    System.out.println("链表最后一个元素是 : " + textTwo.getLast());  
    

    结果为

    链表的第一个元素是 : a
    链表最后一个元素是 : d

    2、删除第一个或最后一个元素
    list.removeFirst();
    list.removeLast();

    System.out.println(textTwo.removeFirst());  
    System.out.println(textTwo.removeLast());  
    System.out.println(textTwo);
    

    结果是

    a
    d
    [b, c]

    3、查找元素位置
    List.indexOf()

    System.out.println(textTwo.indexOf("b"));  
    

    结果为

    1

    4、根据范围删除元素
    list.subList(1,2).clear()

    textTwo.subList(1,2).clear();
    System.out.println(textTwo);
    

    结果为

    [a, c, d]

    5、添加元素
    尾部添加
    list.add()

    textTwo.add("e");
    System.out.println(textTwo);
    

    结果

    [a, b, c, d, e]

    首部添加

    textTwo.addFirst("e");
    System.out.println(textTwo);
    

    结果

    [e, a, b, c, d]

    指定位置添加

    textTwo.add(2,"e");
    System.out.println(textTwo);
    

    结果

    [a, b, e, c, d]

    6、获取指定位置的元素
    list.get()
    首位list.getFirst()
    末位list.getLast()

    System.out.println(textTwo.getFirst());
    System.out.println(textTwo.getLast());
    System.out.println(textTwo.get(2));
    

    结果

    a
    d
    c

    7、查询链表列表的长度(元素个数)
    list.size()

    System.out.println(textTwo.size());
    

    结果

    4

    遍历方法

    1、一般的for循环(随机访问)

    int size = textTwo.size();
    for (int i=0; i<size; i++) {
        System.out.println(textTwo.get(i));
    }
    

    结果

    a
    b
    c
    d

    2、for--each循环

    for (String string:textTwo) {
                System.out.println(textTwo);
            }
    

    结果

    [a, b, c, d]
    [a, b, c, d]
    [a, b, c, d]
    [a, b, c, d]

    3、迭代器iterator

    for(Iterator iter = list.iterator(); iter.hasNext();)
        iter.next();
    

    4、用pollLast()来遍历LinkedList

    while(textTwo.pollLast() != null)
    System.out.println("a");
    

    结果

    a
    a
    a
    a

    相关文章

      网友评论

          本文标题:LinkedList的用法

          本文链接:https://www.haomeiwen.com/subject/sqwiyqtx.html