Java 重复局部变量

Java 重复局部变量,java,eclipse,Java,Eclipse,我最近开始用java编程,需要帮助 我正在使用Java编程制作一个游戏,让用户猜一个数字。一旦用户最终获得正确答案,就会记录并显示尝试次数 星线给我带来了麻烦,有什么帮助吗 import static java.lang.System.out; import java.util.Scanner; import java.util.Random; import javax.swing.JOptionPane; public class HelloWorld { public s

我最近开始用java编程,需要帮助

我正在使用Java编程制作一个游戏,让用户猜一个数字。一旦用户最终获得正确答案,就会记录并显示尝试次数

星线给我带来了麻烦,有什么帮助吗

import static java.lang.System.out;
import java.util.Scanner;
import java.util.Random;

import javax.swing.JOptionPane;

public class HelloWorld
{
        public static void main(String args[])
        {
            Scanner keyboard = new Scanner (System.in);
            out.println("Hello, welcome to the Guessing Game.");
            out.println("To begin, pick a random number from 1 - 10: ");

            int inputNumber = keyboard.nextInt();
            int randomNumber = new Random(1).nextInt(10);
            int numGuesses = 0;

            while (inputNumber != randomNumber){

                out.println();
                out.println("You're guess was wrong, try again.");
                out.println("Pick an integer from 1-10.");
                **int inputNumber = keyboard.nextInt();** 
                numGuesses++;
            }

            {

                out.println("You won in " + numGuesses + " guesses.");

                out.println("Thanks for playing!");
            }
            }

}

此行正在重新声明已声明的inputNumber

int inputNumber = keyboard.nextInt();
换成

inputNumber = keyboard.nextInt();
替换

**int inputNumber = keyboard.nextInt();** 

对于原始版本,您将在while范围内创建一个新变量,而不是在while范围外指定给旧变量


由于它在while块之后被销毁,因此条件本身使用函数范围中的变量。

您已经在顶部定义了,因此不必重新定义它。相反,它应该是inputNumber=keyboard.nextInt

如果他们已经解决了你的问题,你应该将其中一个答案标记为答案
inputNumber = keyboard.nextInt();