Java 导入不工作

Java import not working

我是 Java 的新手,这可能是一个非常愚蠢的问题。我试图从用户那里得到一个简单的输入,为此我得到 Scanner class 或 BufferedReader。然而,当我尝试导入 java.io.* 时,classes 显示为未定义。

这是我的代码:

package testing;

import java.io.*;
import java.util.Scanner;

public class Something {
    public static void logln(String content) {
        System.out.println(content);
    }
    public static void main(String [] args) {

    }
    void getInput(String prompt) {
        Scanner s = new Scanner();
    }
}

Scanner s 显示未定义。为什么会这样?

这是你的问题:

Scanner s = new Scanner();  // no constructor exists

您需要将参数传递给 Scanner 构造函数,因为此 class 没有默认的无参数构造函数。您需要仔细阅读错误消息,因为它通常会准确地告诉您哪里出了问题,这里是 "The constructor Scanner() is undefined".

  • 以后如果有类似问题,总是post准确完整错误信息。
  • 此外,真正友好地使用 Java API,因为它将帮助您理解您正在使用的 classes。这里的 Scanner API 会准确地告诉你这个 class.
  • 有哪些构造函数可用

Hovercraft Full Of Eels,已指出正确的错误。 我想补充几件事 - 正确的构造函数是

Scanner s = new Scanner(System.in); 

我也不太明白为什么你的 getter 方法 getInput() 是参数化的。您想详细说明一下吗?

您的问题与java导入无关。

如果您想从通常连接到键盘输入的 inputStream 获取输入,请将您的构造函数更改为

Scanner sc = new Scanner(System.in);

使用

读取输入的内容
String content = sc.nextLine();