有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java扫描程序无法扫描第一个字符串

我有以下代码

public static void main(String args[]){
    Scanner scanner = new Scanner(System.in);
    int noOfTestCases = scanner.nextInt();
    String[] firstStringsList = new String[noOfTestCases];
    String[] secondStringsList = new String[noOfTestCases];
    for(int i=0;i<noOfTestCases;i++){
        firstStringsList[i] = scanner.nextLine();
        secondStringsList[i] = scanner.nextLine();
    }
    for(int i=0;i<noOfTestCases;i++){
        System.out.println("First String : " + firstStringsList[i]);
        System.out.println("Second String : " + secondStringsList[i]);
    }
}

输出结果如下

1
asd
First String : 
Second String : asd

也就是说,我首先输入1,这意味着我有一个涉及获取two String inputs(per test case).的测试用例,但我只能输入一个分配给secondStringsList[i]的字符串。我正在使用Intellij IDEA。为什么会这样?解决办法


共 (1) 个答案

  1. # 1 楼答案

    我可能已经解决了你的问题

    public static void main(String args[]) {
            Scanner scanner = new Scanner(System.in);
            int noOfTestCases = scanner.nextInt();
            String[] firstStringsList = new String[noOfTestCases];
            String[] secondStringsList = new String[noOfTestCases];
    
            scanner.nextLine();
    
    
            for (int i = 0; i < noOfTestCases; i++) {
                firstStringsList[i] = scanner.nextLine();
                secondStringsList[i] = scanner.nextLine();
            }
            for (int i = 0; i < noOfTestCases; i++) {
                System.out.println("First String : " + firstStringsList[i]);
                System.out.println("Second String : " + secondStringsList[i]);
            }
        }