📜  java 强制用户输入 int - Java (1)

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

Java强制用户输入int

在Java中,我们经常需要从用户那里获取输入值。有时候,我们需要强制用户输入一个整数,而不是一个字符串或其他类型的值。在这种情况下,我们需要一个方法来接受一个整数作为输入,并确保它是一个整数值。

在本文中,我们将介绍两种不同的方法来实现这一目标:使用Scanner类和使用BufferedReader类。

使用Scanner类

Scanner类是Java用于读取输入的类。我们可以使用Scanner类的nextInt()方法强制用户输入一个int值。

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter an integer: ");
    int num = input.nextInt();
    System.out.println("You entered " + num);
  }
}

上面的代码将提示用户输入一个整数,并将其存储在num变量中。如果用户输入了一个非整数值,程序将抛出InputMismatchException异常。

使用BufferedReader类

BufferedReader类也可以用于读取用户输入。我们可以使用BufferedReader类的readLine()方法接受一个用户输入的字符串,然后使用Integer.parseInt()方法将其转换为int值。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
  public static void main(String[] args) throws IOException {
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    System.out.print("Enter an integer: ");
    int num = Integer.parseInt(input.readLine());
    System.out.println("You entered " + num);
  }
}

上面的代码将提示用户输入一个整数,并将其存储在num变量中。如果用户输入了一个非整数值,程序将抛出NumberFormatException异常。

总结

在Java中,我们可以使用Scanner类或BufferedReader类来强制用户输入一个int值。两种方法都有其优点和缺点,开发人员可以根据需要选择适合自己的方法。无论使用哪种方法,我们都应该确保程序能够处理用户输入错误的情况。