Java - 使用Scanner编译错误

时间:2013-12-31 21:04:20

标签: java

这是我目前的课程:

package Mathias;

import java.util.*;

public class Scanner {
    public static void main(String args[]) {
        System.out.print("What's your name?");
        Scanner sc = new Scanner(System.in);
        String Input = sc.nextLine();
        System.out.println("Hello, " + Input + ".");
    }
}

我在5日和2日遇到两个错误第6行。
Error 1 http://puu.sh/64VGk.jpg

Error 2 http://puu.sh/64VHe.jpg

4 个答案:

答案 0 :(得分:7)

您需要为您的课程命名Scanner以外的其他内容。该名称已由java.util.Scanner使用,并且创建具有该名称的新类会使编译器感到困惑。

或者,您可以尝试指定:

java.util.Scanner sc = new java.util.Scanner(System.in);

以便您的代码明确无误。

答案 1 :(得分:4)

您的类隐藏了内置类java.util.Scanner的定义,并且没有接受InputStream的构造函数。给这个班一个不同的名字。

public class ScannerTest {
  ...
}

Scanner的无限制使用将指向correct class

答案 2 :(得分:2)

您将您的班级命名为Scanner。将其命名为其他内容,然后添加

import java.util.Scanner;

到你的进口。您没有访问库Scanner类,而是尝试访问您自己的类 - 它没有您尝试使用的任何功能。

答案 3 :(得分:0)

Java无法识别您所指的扫描仪。项目中有两个扫描程序:java.util.Scanner和您创建的Scanner类。 Java认为您指的是您创建的Scanner类,而不是java.util.Scanner类。只需将您的类和文件重命名为java尚未使用的名称。