Java程序用于无限循环

时间:2013-12-09 22:52:44

标签: java loops

下面的代码接受一个整数并检查并打印如果< 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

3 个答案:

答案 0 :(得分:4)

while(true) {
    //do stuff
}

for(;;) {
    //do stuff
}

do {
    //stuff
}while(true);

这三个都是无限循环。如果你想根据一些用户输入退出无限循环(假设0),你可以添加:

if(n == 0) {
    break;
}

如果您的循环已输入0,您希望循环结束。此代码段适用于所有三种无限循环变体。

答案 1 :(得分: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);

答案 2 :(得分:0)

我建议使用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
    }
}