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