public class LinkListTest {
public static void main(String[] args) {
LinkedList linkedlist = new LinkedList();
//使用队列的方式添加队列的元素
linkedlist.offer("java");
linkedlist.offer("php");
linkedlist.offer("html5");
//通过list的方式来输出集合中的元素
for (int i = 0; i<linkedlist.size(); i++)
{
System.out.println("队列中的元素为:" + linkedlist.get(i));
}
//按照队列的方式来操作队列
System.out.println(linkedlist.peekFirst()); //不删除元素,输出对头的元素 java
System.out.println(linkedlist.peekLast()); //不删除元素,输出对位的元素 html5
System.out.println(linkedlist); //[java, php, html5]
System.out.println(linkedlist.pollFirst()); //弹出并删除对头的元素
System.out.println(linkedlist.pollLast()); //弹出并删除对尾的元素
System.out.println(linkedlist); //[php]
//按照栈的方式来操作栈
linkedlist.push("java");
System.out.println(linkedlist); //[java, php]
System.out.println(linkedlist.pop()); //弹出栈顶元素java
System.out.println(linkedlist); //[php]
/*
* LinkedList是List的一个实现类,也就是意味着他是一个List的集合,可以根据索引来查找集合中的元素,
* 同时他还实现了Deque的接口,可以当做以为双端口的队列来使用,因此既可以当做栈来用,也可以当做队列来使用。
* LinkedList的实现机制与ArrayList ArrayDeque的实现机制完全不同,后两者是在底层采用一个动态的可分配的Object[]的数组来实现的,
* 当集合的元素超出了数组的容量的时候,系统会在底层重新分配一个Object[]数组来存储元素。而LinkedList不同,他是采用。链表的形式
* 来存储因此在访问LinkedList中的元素的时候的性能比较差,而在插入删除的时候性能会比后两者高。而他们三者同Vector比价来看,
* vector虽然也是采用了数组的形式,但是他实现了线程同步的功能(实现机制也不好),因此相对于前三者,Vector的性能最差。
*
* */
}
}
Java中LinkList类的使用
最新推荐文章于 2024-08-11 23:16:11 发布