繁体   English   中英

无限循环的Java程序

[英]Java Program for infinite loop

下面的代码接受一个整数,并检查并打印是否<5,是否可以被5整除,是否可以被3整除,或者是否可以被3和5整除。但是我想将代码放入无限循环中,以便控制台反复询问我在打印输出后输入一个整数。 到目前为止,这是我的代码:

import java.util.Scanner;
public class Q3c {
public static void main(String args[]) {
    System.out.println("Enter an integer ");
    Scanner input = new Scanner(System.in);

    int n = input.nextInt();
    if ((n%5 == 0) && (n%3 == 0)) {
        System.out.println("The number " + n + " is  divisible by 3 and 5");
    }
    else {
        if(n%5 == 0) {
              System.out.println(n + " is divisble by 5");
        }
        if(n%3 == 0) {
              System.out.println(n + " is divisble by 3");
        }
    }

    if (n < 5) {
        System.out.println(n + "is <5");
    }
    input.close();
}
}

演示输出:

Enter an integer 5
5 is divisibe by 5

Enter an integer
while(true) {
    //do stuff
}

for(;;) {
    //do stuff
}

do {
    //stuff
}while(true);

所有这三个都是无限循环。 如果要基于某些用户输入(假设为0 )退出无限循环,则可以添加:

if(n == 0) {
    break;
}

如果它们已输入0则您希望循环结束的位置。 此代码段适用于所有三个无限循环变体。

while(true) {
    //your code
    //code to manage program exit.
}

要么

for(;;) {
    //your code
    //code to manage program exit.
}

要么

do {
    //your code
    //code to manage program exit.
}while(true);

我建议您使用else if构造,以简化代码……类似:

Scanner input=new Scanner(System.in);
while(true) {
    System.out.println("Enter an integer ");
    int n=input.nextInt();
    if((n%5==0)&&(n%3==0)){
       //stuff
    } else if (n%5==0) {
       //other stuff
    } else if (n%3==0) {
       //other
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM