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();
}
}
定义和用法
如果下一个标记表示一个可以被 long
数据类型存储的数字,则 hasNextLong()
方法返回 true,该类型可以存储任何介于 -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()
方法更改。
什么是标记?
标记是由分隔符分隔的字符序列。默认分隔符是空白字符块,但可以使用useDelimiter()
方法更改。
语法
以下之一
public boolean hasNextLong()
public boolean hasNextLong(int radix)
参数值
参数 | 描述 |
---|---|
radix | 可选。指定用于解释数字的基数。基数指定可以使用多少个不同的符号来表示数字中的一个数字。 |
技术细节
返回值 | 一个boolean 值,如果下一个标记代表一个long 值,则为真。 |
---|---|
抛出异常 | IllegalStateException - 如果扫描器已关闭。 |