我应该根据以下规范在java中输入一个字符串数组:
输入:包含K个英文单词的文本(其中K <= 5000),带有空格和标点符号
我的方法是使用一个字符串数组,每个字符串包含一个单词,并在循环内使用java.util.Scanner.next()
进行输入。
我的问题是当用户点击进入时如何停止输入。有什么想法吗?
答案 0 :(得分:0)
使用Scanner
。阅读用户输入的行。如果用户输入空行,则退出循环:
public static void main(String[] args) throws Exception {
final Scanner scanner = new Scanner(System.in);
while (true) {
final String read = scanner.nextLine();
if ("".equals(read)) {
break;
}
System.out.println(read);
}
}
答案 1 :(得分:0)
你可以使用两个Scanner对象来处理这个问题:
Scanner inScan = new Scanner(System.in);
String line = sinScan.nextLine();
while (line.length() > 0) {
Scanner lineScan = new Scanner(line);
while(lineScan.hasNext()) {
String word = lineScan.next();
// process this word.
}
line = inScan.nextLine();
}
// loop should exit when the user enters a blank line.