读取多行输入总是无限循环,除非我打印每一行

匿名

我正在尝试使用 Java 中的 Scanner 处理来自控制台的多行输入,除非我打印出每一行,否则它会在无限循环中运行。出于某种原因,除非我打印它,否则下一行不会被“消耗”。我不想打印它,我只想将每一行添加到一个数组中以供以后处理,所以我不知道如何在不打印的情况下“使用”每一行。这两个循环都是无限的:

while(sc.hasNext()) {
        String line = sc.nextLine();
        commands.add(line);
        //System.out.println(line);
        sc.nextLine();
}


while(sc.hasNext()) {
        String line = sc.nextLine();
        commands.add(line);
        //System.out.println(line);
        //sc.nextLine();
    }

编辑:我的扫描仪初始化如下,我还将条件编辑为 hasNextLine(),仍然运行无限循环。打印“完成”的打印语句永远不会执行。

Scanner sc = new Scanner(System.in);
    ArrayList<String> commands = new ArrayList<String>();
    while(sc.hasNextLine()) {
        String line = sc.nextLine();
        commands.add(line);
        //System.out.println(line);
        //sc.nextLine();
    }
System.out.println("done");
用户207421

你应该打电话hasNextLine(),而不是hasNext()

印刷与它无关。打印不会终止循环。

编辑如果你从来没有看到你的 final "done",这根本不是一个无限循环,它是一个:你永远不会向System.in. 键入 Ctrl/d 或 Ctrl/z 取决于 Windows 与 Unix/Linux/... 再次强调,打印与此无关。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环读取文件的每一行到其自己的数组

来自分类Dev

在datagridview中循环每一行

来自分类Dev

Perl读取每一行

来自分类Dev

bash读取循环仅读取输入变量的第一行

来自分类Dev

我想创建一个函数,该函数读取输入的每一行并产生其总和,并使用C ++将其另存为sum.txt

来自分类Dev

在一行中运行多行循环

来自分类Dev

While循环不工作,除非我插入打印语句 - java的

来自分类Dev

每输入一行返回多行/列的数据帧

来自分类Dev

程序正在跳过while循环以读取文件中的每一行

来自分类Dev

多行输入和一行打印

来自分类Dev

无限循环:继续打印一行

来自分类Dev

读取每一行并将其用作输入

来自分类Dev

在datagridview中循环每一行

来自分类Dev

bash读取循环仅读取输入变量的第一行

来自分类Dev

读取CSV文件并使用每一行作为spock的where子句中的输入

来自分类Dev

从我的桌面读取文件并从中打印每一行

来自分类Dev

我想创建一个函数,该函数读取输入的每一行并产生其总和,并使用C ++将其另存为sum.txt

来自分类Dev

如何读取输入文件并在每一行上执行操作

来自分类Dev

如果条件为真,如何停止while循环以读取文件的每一行?

来自分类Dev

从每一行的第一行打印值

来自分类Dev

每读取一行输入文件,将文件扩展为多个.csv文件

来自分类Dev

从文件读取,但是我无法打印最后一行?

来自分类Dev

MySQL循环每一行并更新

来自分类Dev

用户定义的函数输入可循环数据帧的每一行

来自分类Dev

在一行中打印多行语句

来自分类Dev

更正输入文件以读取每一行

来自分类Dev

读取 XML 文件的每一行

来自分类Dev

分别打印每一行

来自分类Dev

循环打印多行(按预期)但只将一行写入文件

Related 相关文章

  1. 1

    循环读取文件的每一行到其自己的数组

  2. 2

    在datagridview中循环每一行

  3. 3

    Perl读取每一行

  4. 4

    bash读取循环仅读取输入变量的第一行

  5. 5

    我想创建一个函数,该函数读取输入的每一行并产生其总和,并使用C ++将其另存为sum.txt

  6. 6

    在一行中运行多行循环

  7. 7

    While循环不工作,除非我插入打印语句 - java的

  8. 8

    每输入一行返回多行/列的数据帧

  9. 9

    程序正在跳过while循环以读取文件中的每一行

  10. 10

    多行输入和一行打印

  11. 11

    无限循环:继续打印一行

  12. 12

    读取每一行并将其用作输入

  13. 13

    在datagridview中循环每一行

  14. 14

    bash读取循环仅读取输入变量的第一行

  15. 15

    读取CSV文件并使用每一行作为spock的where子句中的输入

  16. 16

    从我的桌面读取文件并从中打印每一行

  17. 17

    我想创建一个函数,该函数读取输入的每一行并产生其总和,并使用C ++将其另存为sum.txt

  18. 18

    如何读取输入文件并在每一行上执行操作

  19. 19

    如果条件为真,如何停止while循环以读取文件的每一行?

  20. 20

    从每一行的第一行打印值

  21. 21

    每读取一行输入文件,将文件扩展为多个.csv文件

  22. 22

    从文件读取,但是我无法打印最后一行?

  23. 23

    MySQL循环每一行并更新

  24. 24

    用户定义的函数输入可循环数据帧的每一行

  25. 25

    在一行中打印多行语句

  26. 26

    更正输入文件以读取每一行

  27. 27

    读取 XML 文件的每一行

  28. 28

    分别打印每一行

  29. 29

    循环打印多行(按预期)但只将一行写入文件

热门标签

归档