如何使基于多个文本的 java 菜单起作用?
How can I make multiple text based java menus work?
我有一个电影亭的主菜单,我可以输入一个数字(在本例中为 5),它将带我进入管理菜单。问题是管理菜单有一组不同的案例,当我输入一个数字以从管理菜单访问案例时,它只会让我回到主菜单。
我不确定我可以在代码中更改什么以使其工作,我希望当我在管理菜单中输入数字时,它会执行指定的方法。
一开始我从Kiosk
class中调用了use()
方法
哪个执行此菜单:
当我按 2 时,它会将我带到主菜单而不是执行 addCustomer()
。
我想你想这样实现它:
while ((choice = readChoice()) != 'X') {
switch (choice) {
case '1': catalogue(); break;
case '2': useAdmin(); break;
}
}
private void useAdmin() {
char choice = admin(); // instead of assigning 5 to this option
switch (choice) {
case '1': listCustomer(); break;
case '2': addCustomer(); break;
case 'R': use();
}
}
在您当前的实现中,您将 admin()
函数称为 returns 一个字符。
switch (choice) {
case '1': catalogue(); break;
case '2': admin(); break;
}
请注意,您不对 admin()
函数 returns 的字符做任何事情。稍后您只需将字符 5
分配给 char choice
.
我有一个电影亭的主菜单,我可以输入一个数字(在本例中为 5),它将带我进入管理菜单。问题是管理菜单有一组不同的案例,当我输入一个数字以从管理菜单访问案例时,它只会让我回到主菜单。
我不确定我可以在代码中更改什么以使其工作,我希望当我在管理菜单中输入数字时,它会执行指定的方法。
一开始我从Kiosk
class中调用了use()
方法
哪个执行此菜单:
当我按 2 时,它会将我带到主菜单而不是执行 addCustomer()
。
我想你想这样实现它:
while ((choice = readChoice()) != 'X') {
switch (choice) {
case '1': catalogue(); break;
case '2': useAdmin(); break;
}
}
private void useAdmin() {
char choice = admin(); // instead of assigning 5 to this option
switch (choice) {
case '1': listCustomer(); break;
case '2': addCustomer(); break;
case 'R': use();
}
}
在您当前的实现中,您将 admin()
函数称为 returns 一个字符。
switch (choice) {
case '1': catalogue(); break;
case '2': admin(); break;
}
请注意,您不对 admin()
函数 returns 的字符做任何事情。稍后您只需将字符 5
分配给 char choice
.