如何使用 Scanner 在 Java 中打印多个句子?

How are multiple sentences printed in Java using Scanner?

我想在 Java 中打印多个句子(每个句子都有一个以上的单词),但即使在使用 .nextLine() 后我仍收到 运行 时间错误。下面是我的代码,有人能指出我做错了什么吗?

import java.util.*;
class GFG
{
    public static void main (String[] args)
    {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt(); //t>1
        for(int p=1; p<=t; p++)
        {
            sc.nextLine();
            String s = sc.nextLine();
            System.out.println(s);
        }
    }
}   // Input-
    // 2
    // HOW ARE YOU
    // GOD IS ONE
    // Output-
    // HOW ARE YOU -(followed by run time error)

for 循环中的第一行:sc.nextLine() 从输入流中读取一行并将其丢弃(return 值未放入任何变量中)。在您的代码中,您在每次迭代中读取两行(提供的输入为 4 行),而只有 2 行输入。因此,您需要删除此行(第一个 sc.nextLine())。

附带说明一下,当我尝试 运行 程序时,它只是等待更多行,并没有抛出 运行 时间错误(如果您遇到错误,最好 post异常本身)。