使用以下代码做作业问题,当我在程序运行时输入 -1 时,控制器会插入字符串,即使输入 -1 时不应该这样做。do while 循环对 while 语句使用相同的代码并且它正确退出,我不确定为什么其他代码不能按我认为的方式工作。我对 Java 和编程非常陌生,感谢任何帮助!
public static void main(String[] args) throws IOException
{
Control controller;
String userInput = "";
//InputStream fs1;
BufferedReader br1;
// int count = 0;
controller = new Control(userInput);
do
{
System.out.println("Please input a String and press Enter.");
System.out.println("Inputting -1 will terminate the building "
+ "and input process.");
br1 = new BufferedReader(new InputStreamReader(System.in));
if(!"-1".equals(userInput))
{
userInput = br1.readLine();
controller.insert(userInput);
}
System.out.print("\n"+ "User input: "+ userInput + "\n\n");
}// end do
while (!"-1".equals(userInput));
System.out.println("\nList initialized based on your inputs:\n");
controller.display();
}
这是我运行的内容:运行:请输入字符串并按 Enter。输入 -1 将终止构建和输入过程。5
用户输入:5
请输入一个字符串,然后按 Enter。输入 -1 将终止构建和输入过程。4
用户输入:4
请输入一个字符串,然后按 Enter。输入 -1 将终止构建和输入过程。3
用户输入:3
请输入一个字符串,然后按 Enter。输入 -1 将终止构建和输入过程。-1
用户输入:-1
根据您的输入初始化列表:
列表(first-->last):-1 3 4 5 BUILD SUCCESSFUL(总时间:6 秒)
-1 不应出现在列表中。有什么建议吗?