gpt4 book ai didi

java - 退出 do-while 循环应用程序

转载 作者:行者123 更新时间:2023-11-30 07:42:16 32 4
gpt4 key购买 nike

我的控制台应用程序有点问题。应用程序应该从用户那里获取数字并将它们添加到列表中,但是如果输入是“c”,它应该关闭。我不知道如何在不使用 Scanner.nextLine() 挂起应用程序并退出循环的情况下验证“c”变量。

public void getNumbersFromUser() {

Scanner scanner = new Scanner(System.in);
int number;
boolean flag = true;

do{
System.out.println("Enter a number");

while(!scanner.hasNextInt()) {
System.out.println("Thats not a number !");
scanner.next();
}
number = scanner.nextInt();
list.add(number);
System.out.println(list);

}
while(flag);

最佳答案

一种方法是使用 Scanner.next(),它将阻止等待输入,并使用 Integer.parseInt() 自己检查输入:

List<Integer> list = new ArrayList<>();
Scanner scanner = new Scanner(System.in);

do {
System.out.println("Enter a number");
String next = scanner.next();
if (next.equals("c")) {
break;
}

try {
int number = Integer.parseInt(next);
list.add(number);
System.out.println(list);
} catch (NumberFormatException ex) {
System.out.println("That's not a number !");
}
} while (true);

关于java - 退出 do-while 循环应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55006030/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com