📜  在 java 中输入 3 int 1 行(1)

📅  最后修改于: 2023-12-03 15:07:40.595000             🧑  作者: Mango

在 Java 中输入 3 int 1 行

在 Java 中输入 3 个整数可以有多种方式实现,其中一种常用的方式是利用 Scanner 类进行输入操作。

使用 Scanner 类进行输入操作
import java.util.Scanner;

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

        System.out.println("请输入 3 个整数,以空格分隔:");

        int num1 = scanner.nextInt();
        int num2 = scanner.nextInt();
        int num3 = scanner.nextInt();

        System.out.println("您输入的三个整数分别是:" + num1 + "、" + num2 + "、" + num3);
    }
}

以上代码首先创建了一个 Scanner 对象,然后调用 nextInt() 方法三次,分别存储用户输入的三个整数。最后将三个整数打印输出。

需要注意的是,nextInt() 方法只能读取用户输入的整数,如果用户输入了其他类型的值,程序将会抛出异常。因此在真实的应用场景中,需要做好异常处理工作。

使用 BufferedInputStream 进行输入操作

另外一种 Java 中输入三个整数的方式是使用 BufferedInputStream 类进行输入操作。

import java.io.BufferedInputStream;
import java.io.IOException;

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

        System.out.println("请输入 3 个整数,以空格分隔:");

        StringBuilder stringBuilder = new StringBuilder();
        int num;

        try {
            while ((num = input.read()) != -1) {
                if (num == ' ') {
                    break;
                }

                stringBuilder.append((char)num);
            }

            int num1 = Integer.parseInt(stringBuilder.toString());
            stringBuilder.setLength(0);

            while ((num = input.read()) != -1) {
                if (num == ' ') {
                    break;
                }

                stringBuilder.append((char)num);
            }

            int num2 = Integer.parseInt(stringBuilder.toString());
            stringBuilder.setLength(0);

            while ((num = input.read()) != '\n' && num != '\r' && num != -1) {
                stringBuilder.append((char)num);
            }

            int num3 = Integer.parseInt(stringBuilder.toString());

            System.out.println("您输入的三个整数分别是:" + num1 + "、" + num2 + "、" + num3);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上 Code 使用 BufferedInputStream 类进行输入操作。先读取用户输入的字符,直到遇到空格,然后将读到的字符转换为整数,并存储在 num1 变量中。接着再读取用户输入的字符,直到遇到空格,然后将读到的字符转换为整数,并存储在 num2 变量中。最后再读取剩余的字符,直到遇到回车或者换行符,然后将读到的字符转换为整数,并存储在 num3 变量中。

需要注意的是,以上方式只适用于读取用户输入的整数,如果用户输入了其他类型的值,程序将会出错。因此在真实的应用场景中,需要做好异常处理工作。