如何使用扫描程序只接受有效的int作为输入

如何使用扫描程序只接受有效的int作为输入

我试图使一个小程序更健壮,我需要一些帮助。

Scanner kb = new Scanner(System.in);int num1;int num2 = 0;System.out.print("Enter number 1: ");num1 = kb.nextInt();while(num2 < num1) {
    System.out.print("Enter number 2: ");
    num2 = kb.nextInt();}
  1. 数字2必须大于数字1。

  2. 此外,我希望程序自动检查和忽略,如果用户输入一个字符,而不是一个数字。因为现在当用户输入例如r而不是一个数字,程序只是退出。


回首忆惘然
浏览 465回答 3
3回答

萧十郎

如果num 2必须大于num 1,则条件num 2<num 1应为num 2<=num 1。不知道kb对象是什么,我读了一个String然后try英Integer.parseInt()如果你不catch这是一个异常,如果有的话,读取一个新的,可能通过将num 2设置为Integer.MIN_value,并在示例中使用相同类型的逻辑。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java