Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中输入特定数量的单词?_Java - Fatal编程技术网

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

如何在java中输入特定数量的单词?,java,Java,我应该根据以下规范在java中输入字符串数组: 输入:包含K个英文单词的文本(其中K使用扫描器。读取用户输入的行。如果用户输入空行,则退出循环: public static void main(String[] args) throws Exception { final Scanner scanner = new Scanner(System.in); while (true) { final String read = scanner.nextLine();

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


输入:包含K个英文单词的文本(其中K使用
扫描器
。读取用户输入的行。如果用户输入空行,则退出循环:

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);
    }
}

您可以使用两个扫描仪对象来处理此问题,如下所示:

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.

为什么你要求用户输入5000个单词,而不是要求他提供一个包含这些单词的文件?@Rohit出于某种原因,让我们假设我必须从控制台获取输入,而不是
Scanner
finish命令行输入,如果你仍然按enter键的话?使用Scanner.nextLine(),它将包含用户输入的文本,包含所有单词和标点符号。如果需要,请解析此文本。