Java实例06-银行取票机
利用队列实现一个取票机,输入一个名字返回一个号码
调用的队列详见:https://www.cnblogs.com/TSCCG/p/14797860.html
主类:
package bank; import queue.SuperQueue; import java.util.Scanner; /** * 银行取票机 * @Author TSCCG * @Date 2021/5/22 8:47 */ public class TellerMachine<T> { public static void main(String[] args) { Scanner sc = new Scanner(System.in); SuperQueue<Integer> su = new SuperQueue<>(); int startNumber = 1; while (true) { //一次压5个数据入栈 for (int i = startNumber; i < startNumber + 5; i++) { su.push(i); } //弹全部数据出去并读取每次弹的数据 while (!su.isEmpty()) { System.out.println("请输入您的姓名"); String name = sc.next(); System.out.println(name + "您的号码是:" + su.pop()); } //弹完全部数据后startNumber此时为1,给它再加5代替弹出去的数据 startNumber += 5; } } }
结果:
请输入您的姓名 张三 张三您的号码是:1 请输入您的姓名 李四 李四您的号码是:2 请输入您的姓名 王五 王五您的号码是:3 请输入您的姓名 赵六 赵六您的号码是:4 请输入您的姓名 拉拉 拉拉您的号码是:5 请输入您的姓名 阿巴 阿巴您的号码是:6 请输入您的姓名 阿巴阿巴 阿巴阿巴您的号码是:7 请输入您的姓名 阿巴阿巴阿巴 阿巴阿巴阿巴您的号码是:8 请输入您的姓名