LinkedQueue的底层实现

Posted ysg520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LinkedQueue的底层实现相关的知识,希望对你有一定的参考价值。

package zy813ture;


public class MyLinkedQueue1 {
private Node head;

private Node last = head = new Node();//初始化可以设定默认值,形式固定

// private int size;

private class Node {
private Object data;

private Node next;
}

public MyLinkedQueue1() {
// last = head = new Node();
// last=head;
}

public boolean offer(Object element) {// 将指定的元素插入此队列
if (element == null) {
throw new NullPointerException();
}

// 1
Node node = new Node();
node.data = element;

// 2
last.next = node;

// 3
last = node;
// size++;
return true;

}

public Object peek() {// 获取不移除此队列的头,如果此队列为空,则返回 null。
if (head.next == null) {
return null;
}

return head.next.data;
}

public Object poll() {// 获取并移除此队列的头,如果此队列为空,则返回 null。
if (head.next == null) {
return null;
}

//1
Node node = head;

//2
head= head.next;

//3
//node= null;
node =null;
return head.data;
}
public static void main(String []args){
MyLinkedQueue1 me= new MyLinkedQueue1();
me.offer("ab1");
me.offer("ab2");
me.offer("ab3");
me.offer("ab4");
me.offer("ab5");
//System.out.println(me.peek());
System.out.println(me.poll());//ab1 null
System.out.println(me.poll());//
//System.out.println(me.peek());

//System.out.println(me.peek());

}







}





























































以上是关于LinkedQueue的底层实现的主要内容,如果未能解决你的问题,请参考以下文章

java Proxy 底层实现

Docker的底层原理实现(二十)

HashMap底层实现原理剖析

string的底层实现

JDK中枚举的底层实现

JDK中枚举的底层实现