📅  最后修改于: 2023-12-03 15:16:00.451000             🧑  作者: Mango
在Java中,我们经常需要从用户那里获取输入值。有时候,我们需要强制用户输入一个整数,而不是一个字符串或其他类型的值。在这种情况下,我们需要一个方法来接受一个整数作为输入,并确保它是一个整数值。
在本文中,我们将介绍两种不同的方法来实现这一目标:使用Scanner类和使用BufferedReader类。
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类的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值。两种方法都有其优点和缺点,开发人员可以根据需要选择适合自己的方法。无论使用哪种方法,我们都应该确保程序能够处理用户输入错误的情况。