对于特殊情况,需要循环重复3次

时间:2014-04-23 10:02:09

标签: java loops if-statement

我遇到这种情况:用户必须输入'x'的号码。如果值为>=0,则使用此坐标创建新游戏。如果用户输入一个负数,将显示一条消息并且他将有另一次机会,将有三次机会输入正确的数字,否则将没有游戏。我为这个案例尝试过'if-statement',但效果不好。有没有办法在循环中做到这一点?

3 个答案:

答案 0 :(得分:3)

final static int NUMBER_OF_TRIES = 3;
boolean correctNumber = false;
int attemptNumber = 0;

while (!correctNumber)
{

    //get user input

    if (inputIsCorrect)
    {
        createANewGame();
        correctNumber = true;
    }
    else
    {
        System.out.println("Incorrect answer");
        attemptNumber++;
    }

    if(!inputIsCorrect && attemptNumber == NUMBER_OF_TRIES)
    {
        System.out.println("You have reached the max number of tries");
        System.exit(0);  //or whatever you want to happen
    }

 }

答案 1 :(得分:0)

您可以使用带有以下代码的for循环

for(int x = 0; x < 3; x++) {
    //Perform logic
}

这将运行三次。您可以更改3以使其运行更多次或更少次。

答案 2 :(得分:0)

        import java.util.Scanner;

    boolean isValidInput=false;
    int counter=0;

    Scanner sc = new Scanner(System.in);
    int userInput;

    while(counter<3 && isValidInput==false)
    {
        System.out.println("Enter a value: ");
           userInput = sc.nextInt();

        if(userInput>=0)
            isValidInput=true;

        else
            System.out.println("Please Enter valid input");

        counter++;

    }