我正在尝试将 3 个不同的变量输入到 while 循环内的数组中,只要我没有为任何变量输入 stop 即可。如果第一个变量没有停止,while循环只假设让我输入第二个变量值,同样输入第三个变量值
现在,第一个循环运行良好,我可以输入所有 3 个变量,但是第二次和第三次,for 循环输出第一个变量,但不允许我在跳到第二个变量之前输入值。例如我的意思:
名称:afasdf
额外信息:afdsaf
单价:123123214
名称:额外信息:adflskjflk 也是,输入 Stop 也不会结束循环
单位成本:123217
我知道当只有一个变量时这个循环有效,并且我尝试使用 for 循环而不是 while 循环,并添加了大量的 else 语句,但它似乎保持不变
我设置断路器的方式有问题吗?我设置最后一个断路器的方式(即使我为双变量设置 stop 也会停止)是否会弄乱 hte 循环的其余部分?
太感谢了
这是我的代码
ArrayItem s = new ArrayItem();
String Name = null, ID = null;
double Money = 0;
boolean breaker = false;
while(breaker ==false)
{
System.out.print("Name:" + "\t");
Name = Input.nextLine();
if(Name.equals("Stop")) //see if the program should stop
breaker = true;
System.out.print("Extra Info:" + "\t");
Details = Input.nextLine();
if(ID.equals("Stop"))
breaker = true;
System.out.print("Unit Cost:" + "\t");
Money = Input.nextDouble();
// suppose to let me stop even if i input stop
// when the variable is suppose to be a double
if(Input.equals("stop") || Input.equals("stop"))
breaker = true;
else
s.SetNames(Name);
s.SetInfo(Details);
s.SetCost(Money);
}