LinkedList类

LinkedList类的底层是链接列表。同时它也是线程不同步的。LinkedList类也实现了collection,List的所有方法。因为它的底层是链表,所以它拥有头和尾,并且围绕头和尾设计了它独有的方法。
使用LinkedList类可以模拟数据结构:
堆栈:先存进去的后出来,后存进去的先出来。
队列:先存进去的先出来,后存进去的后出来。
链接列表:多个节点组成,节点有两块空间,左边一个空间是数据,右边一个空间是引用。
单向链表:后一个节点的地址存放在前一个节点的引用中。最后一个节点的引用存放的是null,第一个节点是头,最后一个是尾。
LinkedList类的底层使用的就是单向链表。

import java.util.LinkedList;
public class LinkedDemo {
    public static void main(String[] args) {
        LinkedList l=new LinkedList();
        l.addFirst("lishuai");
        l.addFirst("aaa");
        l.addLast("shuai");
        Object o=l.removeFirst();
        System.out.println(o);
        System.out.println(l);
    }
}

LinkedList类中的方法理解起来比较简单,其中有一些不同名担有相同作用的方法,这里就不一一细说了。
这里说一下使用LinkedList类可以模拟数据结构:

import java.util.LinkedList;
public class LinkedListDemo {
    public static void main(String[] args) {
        Queue q=new Queue();
        q.myadd("lishuai");
        q.myadd("shuai");
        q.myadd("shuai");
        q.myadd("shuai");
        q.myGet();
        q.myGet2();
    }
}
class Queue{
    private  final LinkedList l=new LinkedList();
    public void myadd(Object o){
        l.add(o);
    }
    public Object myGet(){//队列模式
        return l.removeFirst();
    }
    public Object myGet2(){//堆栈模式
        return l.removeLast();
    }
}

你可能感兴趣的:(LinkedList类)