我想在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++;
}
}
}
答案 0 :(得分:1)
在代码中,您在循环之前将用户输入转换为变量“s”。在循环“s”永远不会改变所以没有退出条件,它将始终打印完全相同的行。您必须将行String s=input.readLine();
放在循环中,因此每次它都会从用户读取新行。