Java集合练习题-用LinkedList来模拟一个队列(先进先出的特性)
程序员文章站
2024-03-18 12:30:22
...
/*
* 1、使用LinkedList来模拟一个队列(先进先出的特性)
*1.1 拥有放入对象的方法void put(Object o)
*1.2 取出对象的方法Object get()
*1.3 判断队列当中是否为空的方法boolean isEmpty();并且,编写测试代码,验证你的队列是否正确。
*/
package queueDemo01;
import java.util.LinkedList;
import java.util.Scanner;
public class MyQueue {
LinkedList<Object> link=new LinkedList<>();
Scanner input=new Scanner(System.in);
boolean fale=true;
Object temp=null;
/*
*write()方法, 写一个方法让用户输入
*/
public void write() {
do {
System.out.println("请输入队列的值(按0退出):");
temp=input.next();
//当用户输入0的时候,表达已经输入完毕
if(temp.equals("0") ){
fale=false;
}else {
//调用进入队列的方法
setQueue(temp);
}
}while(fale);
}
//进入队列集合
public void setQueue(Object a) {
link.addLast(a);
}
//输出队列
public Object getQueue() {
Object temp=null;
if(!link.isEmpty()) {
temp=link.getFirst();
link.removeFirst();
}
return temp;
}
}
package queueDemo01;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
//调用一个类要先new一个对象
MyQueue mq=new MyQueue();
//调用用户输入的方法
mq.write();
System.out.println("以下是队列的输出:");
for (int i = 0; i < 10; i++) {
Object k=mq.getQueue();
//只要队列为空,就不在输入后续的空值
if(k==null) {
continue;
}
System.out.print(k);
}
}//main
}//Test
上一篇: 实现LRU算法
下一篇: Python队列Queue