这可能是一个奇怪的问题,但如果if语句出现为true或false,是否可以在无限循环中停止扫描程序?
例如,如果你有:
for (;;) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
if (a <= 0) {
// is there something I could put in here to end the loop?
}
else { System.out.println("Continue"); }
很抱歉,如果这是一个愚蠢的问题,我对这一切都不熟悉。
答案 0 :(得分:2)
除了使用break;
之外,您还可以使用while循环并在每次迭代时测试用户输入的值:
Scanner in = new Scanner(System.in);
int a;
while((a = in.nextInt()) > 0){
System.out.println("Continue");
}
System.out.println("finish");
答案 1 :(得分:0)
使用break;
,但你不应该滥用它,最好正确设置条件
答案 2 :(得分:0)
如果break;
中的条件为if
并且控件进入
true
循环
for (;;) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
if (a <= 0) {
break;
}
else { System.out.println("Continue"); }
答案 3 :(得分:0)
使用break;
解决了您的问题。就像这个
import java.util.*;
public class Test {
public static void main (String[]args) {
Scanner in = new Scanner(System.in);
// Scanner input = new Scanner(System.in);
for (int i=0; i< 3;i++) {
System.out.println("Enter a number");
int a = in.nextInt();
if (a <= 0) {
break;// is there something I could put in here to end the loop?
}
else { System.out.println("Continue"); }
}
}}