关于java输入的问题

java如何实现在完成一个完整的输入之后,不回车换行而是用空格隔开继续进行下一个输入

img

Scanner的nextInt方法

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int num = scanner.nextInt();
        int[] ints = new int[num];
        for (int i = 0; i < num; i++) {
            ints[i] = scanner.nextInt();
        }
        for (int i = 0; i < ints.length; i++) {
            if (i == 0) {
                System.out.print(ints[i]);
            } else {
                System.out.print(" " + ints[i]);
            }
        }

    }

以下是一个示例代码,它实现了在输入完一组数据之后用空格而不是回车分隔下一组数据:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // 读取第一行的整数n
        int n = scanner.nextInt();

        // 读取第一组数据
        int a = scanner.nextInt();
        int b = scanner.nextInt();

        // 输出第一组数据
        System.out.println(a + " " + b);

        // 读取并输出剩余的数据
        for (int i = 1; i < n; i++) {
            a = scanner.nextInt();
            b = scanner.nextInt();
            System.out.print(a + " " + b);
            if (i != n - 1) {  // 如果不是最后一组数据,则用空格隔开
                System.out.print(" ");
            }
        }

        scanner.close();
    }
}


上述代码中,首先读入了整数 n 表示接下来有 n 组数据。接着使用 scanner.nextInt() 读取第一个数据,并将其存储在变量 a 中,再用 scanner.nextInt() 读取第二个数据并存储在变量 b 中。然后输出第一组数据,注意要用 System.out.println() 方法将 a 和 b 分别输出,并中间用空格隔开。

接着使用循环来读取和输出剩余的数据。在每次输出一组数据之后,用 System.out.print() 方法而不是 System.out.println() 方法来输出空格,如果当前已输出的数据组数不是总共需要输出的数据组数,则加上一个空格。最后记得关闭输入流。

望采纳