欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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 

Java集合练习题-用LinkedList来模拟一个队列(先进先出的特性)

上一篇: 实现LRU算法

下一篇: Python队列Queue