Eclipse Kepler输入问题

时间:2013-09-17 01:49:37

标签: java eclipse

我不确定这里的代码有什么问题:

package assigment1;
import java.util.Scanner;

public class A1Q2 {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner scan = new Scanner(System.in);
    int Level;
    int PureDiamonds;
    int ImpureDiamonds;


    System.out.print("Please enter the game level (1,2,3,4...): ");
    Level = input.nextInt();

它说input cannot be resolved,问题是我有一个input.nextInt();的旧项目,它正在运作。那有什么不对?这让我发疯了

2 个答案:

答案 0 :(得分:0)

它给你这个问题,因为input不是范围内的变量。

假设您尝试从用户处获取输入,则需要使用scan对象。

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner scan = new Scanner(System.in);
    int Level;
    int PureDiamonds;
    int ImpureDiamonds;


    System.out.print("Please enter the game level (1,2,3,4...): "+ Level);
    Level = scan.nextInt(); // <-- this line.

我想指出的一点是,与您的问题无关,就是当Java是PascalCase语言时您正在使用camelCase。我建议您删除可能的C#惯用语以保持一致性清酒! :)

答案 1 :(得分:0)

查看您的变量名称。在代码中没有您声明名为'input'的变量。您将扫描仪对象命名为“扫描”。

尝试

 Level = scan.nextInt();

此外,尽管它在语法上是“合法的”,但变量的正确Java命名约定是以小写字母开头。按照惯例,类名以大写字母开头。这有助于提高代码的可读性。