问题是你还要声明一个名为Scanner的类.这意味着当你然后声明一个Scanner类型的变量并尝试调用构造函数时,编译器会认为你在谈论你的类.只需将您自己的类更改为其他类(例如Test):
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner myScanner = new Scanner(System.in);
System.out.println(myScanner.nextLine());
}
}
或者,当您的意思是java.util.Scanner时,您可以完全限定名称 – 但就可读性而言,这可能是个坏主意.
// Please don't do this - but it would work.
public class Scanner {
public static void main(String[] args) {
java.util.Scanner myScanner = new java.util.Scanner(System.in);
System.out.println(myScanner.nextLine());
}
}