Java Scanner hasNextInt() 方法
示例
打印字符串中每个整数的值
// Create a scanner object
Scanner myObj = new Scanner("An int is a number between -2,147,483,648 and 2,147,483,647");
// Print the value of every int in the scanner
while (myObj.hasNext()) {
if (myObj.hasNextInt()) {
System.out.println(myObj.nextInt());
} else {
myObj.next();
}
}
定义和用法
hasNextInt()
方法返回 true,如果下一个标记表示一个可以由 int
数据类型存储的数字,即 -2,147,483,648 到 2,147,483,647 之间的任何整数。
扫描器能够解释数字分组,例如使用逗号分隔3位数字组。分组的格式取决于扫描器的区域设置,可以使用 useLocale()
方法更改。
如果使用了 radix 参数,那么它会使用该基数来解释数字。例如,基数为 16 将把数字解释为十六进制(数字 0 到 9 和 A 到 F)。如果未使用 radix 参数,则它会使用扫描器的基数来解释数字,默认为 10,但可以使用 useRadix()
方法更改。
什么是标记?
标记(token)是由分隔符与其他标记分隔开的字符序列。默认的分隔符是一块空白字符,但可以使用 useDelimiter()
方法进行更改。
语法
以下之一
public boolean hasNextInt()
public boolean hasNextInt(int radix)
参数值
参数 | 描述 |
---|---|
radix | 可选。指定用于解释数字的基数。基数指定了可用于表示数字中一位数的不同符号的数量。 |
技术详情
返回 | 一个 boolean 值,如果下一个标记表示一个 int 值,则为 true。 |
---|---|
抛出 | IllegalStateException - 如果扫描器已被关闭。 |