Java.util.Scanner 类

如果扫描仪输入中的下一个标记可以解释为,则 java.util.Scanner.hasNextInt() 方法返回 true使用 nextInt() 方法获取指定基数的 int 值。扫描仪不会前进超过任何输入。

语法

public boolean hasNextInt(int radix)
  • 1

参数

radix 指定用于解释标记的基数。

返回值

当且仅当扫描器的下一个时返回 true token 是一个有效的 int 值。

异常

如果扫描仪关闭,则抛出 IllegalStateException

示例:

在下面的示例中,java.util.Scanner.hasNextInt()方法用于检查扫描仪的下一个标记是否是有效的 int 值。指定的基数。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {

    //要扫描的字符串
    String MyString = "Hello World 10 + 20 = 30.0";

    //创建扫描仪
    Scanner MyScan = new Scanner(MyString);

    while(MyScan.hasNext()) {
      //检查下一个标记是否是基数为16的int
      //如果是,则打印int值
      if(MyScan.hasNextInt(16))
        System.out.println("Int value is: "+ MyScan.nextInt(16));
      //如果下一个标记不是 int
      else
        System.out.println("No Int Value found: "+ MyScan.next());
    }

    //关闭扫描仪
    MyScan.close();
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

上述代码的输出将是:

No Int Value found: Hello
No Int Value found: World
Int value is: 16
No Int Value found: +
Int value is: 32
No Int Value found: =
No Int Value found: 30.0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7