如何在java中输入特定数量的单词?

时间:2013-08-11 10:55:14

标签: java

我应该根据以下规范在java中输入一个字符串数组:

输入:包含K个英文单词的文本(其中K <= 5000),带有空格和标点符号

我的方法是使用一个字符串数组,每个字符串包含一个单词,并在循环内使用java.util.Scanner.next()进行输入。

我的问题是当用户点击进入时如何停止输入。有什么想法吗?

2 个答案:

答案 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.