如何在java中同时读取多行作为输入

时间:2018-04-01 10:41:42

标签: java eclipse

我想在Java中同时输入一个段落(多行)(不是一行一行)。我想在命令提示符中输入的每一行添加“行号为:”,并在输入为空时退出。下面的代码是我的尝试。

我尝试在互联网上进行研究,但我仍然对Scanner和BufferedReader感到困惑。

如何调整程序?

import java.io.*;

public class Word {

    public static void main(String[] args) throws IOException{
        InputStreamReader is = new InputStreamReader(System.in);
        BufferedReader input=new BufferedReader(is);
        String s=input.readLine();
        int lineNum=1;
        while(s!=null&&s.length()>0) {

            System.out.println("Line number "+lineNum+" : "+s);
            lineNum++;

        }
    }
}

1 个答案:

答案 0 :(得分:1)

在代码中,您在循环之前将用户输入转换为变量“s”。在循环“s”永远不会改变所以没有退出条件,它将始终打印完全相同的行。您必须将行String s=input.readLine();放在循环中,因此每次它都会从用户读取新行。