我正在尝试根据输入将值存储在变量中:
switch(pepperoni) {
case 'Y':
case 'y':
topping1 = 1;
break;
case 'N':
case 'n':
topping1 = 0;
break;
default:
{
System.out.print("This is not a valid response, please try again \n");
System.out.print("Do you want Pepperoni? (Y/N): ");
pepperoni = scan.next().charAt(0);
break;
}
如果输入是“Y”或“y”,我希望变量topping1存储值 1,如果输入是“N”或“n”,我希望变量存储值 0
如果输入既不是“Y”、“y”、“N”也不是“n”,那么我希望它重复这个问题,直到输入有效的输入。
当我稍后在程序中尝试打印值“因为它可能尚未初始化”时,就会出现问题,这在某种程度上是有道理的。(下面的例子)
if(topping1 > 0)
System.out.println("Pepperoni");
// 243: error: variable topping1 might not have been initialized
我确实意识到还有其他方法可以做到这一点,但是因为我真的很想学习 Java,所以我会尽可能多地了解基础知识。因此,如果有人能告诉我为什么这不起作用以及是否有办法通过 switch 语句或快速修复来做到这一点,我会非常高兴。