输入字符串直到输入单词

时间:2010-01-16 18:10:53

标签: java

我是Java的新手,所以请耐心等待。 我正在尝试编写一个接收用户输入的程序,直到输入某个单词,此时程序终止。 到目前为止我有这个:

public class Question {

    private String getInput() {
        Input in = new Input();
        System.out.print("Enter String: ");
        String line = reader.readLine();
    }

    public void method() {

        while (!"end".equals(line)) {
            System.out.println(line);
            line = reader.readLine(); // read next line
        }
    }

    public static void main(String[] args) {
        new Question().getInput();
    }
}

任何人都可以解释可能出现的问题吗?

2 个答案:

答案 0 :(得分:1)

此代码甚至不会编译。

private String getInput()
{
    Input in = new Input();
    System.out.print("Enter String: ");
    String line = reader.readLine(); // reader does not exist
}

请至少在发布前努力识别并解决问题。当然编译器警告你(或者会警告你)它不知道reader是什么。据推测,您从网站复制了此代码,但未复制所有代码。必须首先定义reader变量,当您尝试访问其readLine()方法时,它可能是BufferedReader类型。

为了更清楚,请尝试以下代码:

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

这将根据您的需要实例化读者。你可以删除它:

Input in = new Input();

因为你没有使用它。

答案 1 :(得分:0)

您需要定义一个名为reader的变量,该变量在该行可用,并且具有返回字符串的readLine()方法。你最想做的事情就像是

BufferReader reader = new BufferReader(new InputStreamReader(System.in));

查看here了解更多详情。