我正在尝试将数据存储到堆栈中。如果我错了,请纠正我,堆栈是后进先出类型。所以,期待我的程序的输出会有点反转。但遗憾的是输出不同。我不确定代码的哪一部分是错误的。
请帮助:|
代码:
`
公共类 CorruptQueue {
public static void LineUp(){
BufferedReader br = null;
try {
String line;
Stack nameStack = new Stack();
Stack statusStack = new Stack();
Stack stack = new Stack();
br = new BufferedReader(new FileReader("C:/Users/user/Desktop/School Files/Project/CorruptOffice/input.txt"));
while ((line = br.readLine()) != null) {
StringTokenizer stringTokenizer = new StringTokenizer(line, " ");
while (stringTokenizer.hasMoreElements()) {
String lineup = stringTokenizer.nextElement().toString();
String name = stringTokenizer.nextElement().toString();
String status = stringTokenizer.nextElement().toString();
nameStack.push(name);
statusStack.push(status);
System.out.println("Now serving "+ nameStack.pop() + " a " + statusStack.pop());
/*StringBuilder sb = new StringBuilder();
sb.append("" + lineup);
sb.append(" " + name);
sb.append("" + status);
sb.append("\n\n");
System.out.println(sb.toString());*/
}
}
System.out.println("Done");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)
br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
public static void main(String[] args)
{
LineUp();
} }`
输入:
阵容约翰常规
阵容鲍勃常规
阵容汤姆常规
阵容莎拉VIP
阵容玛丽VIP
阵容琼VIP
阵容 Bea VIP
阵容汉克常规
阵容艺术常规
阵容雏菊贵宾
阵容 Marius 常规
阵容 Dane VIP
输出:
现在为约翰服务
现在定期为鲍勃服务
现在为汤姆服务
现在为莎拉提供贵宾服务
现在为玛丽提供贵宾服务
现在为琼提供贵宾服务
现在为 Bea 提供 VIP
现在为汉克服务
现在定期为艺术服务
现在为 Daisy 服务 VIP
现在为马吕斯服务
现在为 Dane 服务 VIP
完毕