Java Scanner nextInt() 方法
示例
打印字符串中每个整数的值
// 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();
}
}
定义和用法
nextInt()
方法返回下一个标记所代表的数字的 int
值。该标记必须表示一个介于 -2,147,483,648 和 2,147,483,647 之间的整数。
扫描器能够解释数字分组,例如使用逗号分隔3位数字组。分组的格式取决于扫描器的区域设置,可以使用 useLocale()
方法更改。
如果使用了 radix 参数,那么它会使用该基数来解释数字。例如,基数为 16 将把数字解释为十六进制(数字 0 到 9 和 A 到 F)。如果未使用 radix 参数,则它会使用扫描器的基数来解释数字,默认为 10,但可以使用 useRadix()
方法更改。
什么是标记?
标记(token)是由分隔符与其他标记分隔开的字符序列。默认的分隔符是一块空白字符,但可以使用 useDelimiter()
方法进行更改。
语法
以下之一
public int nextInt()
public int nextInt(int radix)
参数值
参数 | 描述 |
---|---|
radix | 可选。指定用于解释数字的基数。基数指定了可用于表示数字中一位数的不同符号的数量。 |
技术详情
返回 | 下一个标记所代表的数字的 int 值。 |
---|---|
抛出 |
InputMismatchException - 如果标记不表示一个 int 类型的值。NoSuchElementException - 如果扫描器中没有更多标记。IllegalStateException - 如果扫描器已被关闭。 |