Java Scanner hasNextLong() 方法

6 Nov 2024 | 3 分钟阅读

hasNextLong() 是 Java Scanner 类的一个方法,用于检查此扫描仪输入的下一个标记是否可以解释为默认基数下的 long 值。如果可以解释为 long 值,则返回 true,否则返回 false。Java hasNextLong() 方法有两种,可根据其参数进行区分。它们是:

  • Java Scanner hasNextLong() 方法
  • Java Scanner hasNextLong(int radix) 方法

hasNextLong() 方法

这是一个 Java Scanner 类的方法,用于检查此扫描仪输入的下一个标记是否可以使用 nextLong() 方法解释为默认基数下的 long 值。

hasNextLong(int radix) 方法

这是 Java Scanner 类的内置方法,用于使用 nextLong() 方法检查此扫描仪输入的下一个标记是否可以解释为指定基数下的 long 值。

语法

以下是 hasNextLong() 方法的声明

参数

数据类型参数描述必需/可选
int基数它用于将标记解释为 long 值。必需

返回值

hasNextLong() 方法当且仅当此扫描仪的下一个标记是有效的 long 值时才返回 true。

异常

IllegalStateException - 如果在扫描器关闭后调用此方法,则会抛出此异常。

IllegalArgumentException - 如果指定的基数超出范围,则抛出此异常。

兼容版本

Java 1.5 及以上版本

示例 1

输出

Is Long Value: false
Scan String: Facebook.com
Is Long Value: true
Scan String: 1234567890987654321

示例 2

输出

Give me a bunch of numbers in a line (or 'exit')
3745327 43569 5468943
Sum is 9257839

示例 3

输出

Found Long: ACE

示例 4

输出

Exception in thread "main" java.lang.IllegalArgumentException: radix:598670
	at java.base/java.util.Scanner.setRadix(Scanner.java:1368)
	at java.base/java.util.Scanner.nextLong(Scanner.java:2370)
	at myPackage.ScannerHasNextLongExample4.main(ScannerHasNextLongExample4.java:10)