我需要int num只接受号码。如果输入字母,就会出现错误。是否有一种方法可以立即标记字母,还是必须将num作为字符串并运行循环?
import java.util.Scanner;
public class Test
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("Input a number.");
int num = input.nextInt();
}
}发布于 2012-09-23 05:59:57
您必须使用Scanner.hasNextInt():
如果该扫描器输入中的下一个令牌可以使用nextInt()方法解释为默认基数中的int值,则返回true。扫描器不会超过任何输入。
public static void main(String[] args)
{
System.out.println("Input a number.");
Scanner sc = new Scanner(System.in);
System.out.print("Enter number 1: ");
while (!sc.hasNextInt()) sc.next();
int num = sc.nextInt();
System.out.println(num);
}https://stackoverflow.com/questions/12550068
复制相似问题