Java使用LinkedList来模拟一个队列(先进先出的特性)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java使用LinkedList来模拟一个队列(先进先出的特性)相关的知识,希望对你有一定的参考价值。
拥有放入对象的方法void put(Object o)
取出对象的方法Object get()
判断队列当中是否为空的方法boolean isEmpty();并且,编写测试代码,验证你的队列是否正确。
public class Demo01
private LinkedList<Object> linkedList;
public Demo01()
linkedList = new LinkedList<Object>();
public void put(Object object)
linkedList.add(object);
public Object get()
Object object = null;
if (linkedList.size() != 0)
object = linkedList.get(0);
linkedList.remove(0);
return object;
public boolean isEmpty()
if (linkedList.size() != 0)
return true;
else
return false;
public static void main(String[] args)
Demo01 demo01 = new Demo01();
demo01.put("1");
demo01.put("2");
System.out.println(demo01.get());
System.out.println(demo01.get());
System.out.println(demo01.isEmpty());
结果:
1
2
false
参考技术A 本来就是一个实现了的队列,它是链表的方式。list的接口有如下几个函数
Object get(int idx);
void add(Object obj);
int length()
那么如果完全按照队列的函数定义 应该是
Object getFirst(); //取得第一个
void append(); //追加一个
getFirst 可以用 get(0)代替
append 可以用add代替。
isEmpty 可以用 length() == 0判断。
所以根本不是模拟,本来它就实现了。
以上是关于Java使用LinkedList来模拟一个队列(先进先出的特性)的主要内容,如果未能解决你的问题,请参考以下文章
JAVA-初步认识-常用对象API(集合框架-LinkedList集合-练习栈堆和队列)