Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 而循环在每次迭代后不更新i while(var_Java_Loops_While Loop - Fatal编程技术网

Java 而循环在每次迭代后不更新i while(var

Java 而循环在每次迭代后不更新i while(var,java,loops,while-loop,Java,Loops,While Loop,您在每次迭代中初始化i while (var<10) { String line=keyboard.nextLine(); input = line.charAt(0); game.makeGuess(input); game.getDisguisedWord(); game.isFound(); System.out.println(game.getDisgui

您在每次迭代中初始化i

    while (var<10)  
        {

        String line=keyboard.nextLine();
        input = line.charAt(0);

        game.makeGuess(input);
        game.getDisguisedWord();
        game.isFound();
        System.out.println(game.getDisguisedWord());
        System.out.println(game);
        System.out.println(game.getWrong());
        int i=0;
        i++;
        if (var<i+game.getDisguisedWord().length()-1)
            System.out.print("Guess #" + game.guessCount()+": ");
        var=game.getWrong();
        if (game.isFound())
            var=10;
    }
必须在循环体的外部,在循环之前。放置

int i = 0;

也在循环体外部。“line”也不需要在每次迭代中初始化。

int i=0
是错误。它在每次迭代中将i初始化为0,因此在下一步
i++
之后,i值保持在1。若要仅初始化一次,请将其置于while循环外部。

您需要将

String line = keyboard.nextLine();
高于

int i = 0; 

while(var在代码中,
i
将被视为局部变量,每次循环完成一次迭代,
i
将被销毁


在下一次迭代中,
i
将被创建并由0初始化。您需要在while循环之外初始化此变量。

将'int i=0;'从while循环中放出来。
game.getError()
返回什么?在哪里更改
var
的值?为什么要在循环内部初始化
int i=0;
    while (var<10)  
        {