Java Scanner nextDouble() 方法

定义和用法

nextDouble() 方法返回 double 类型的值,该值包含下一个标记(token)所表示的数字。

扫描器能够解释数字分组,例如使用逗号来分隔每三位数字。数字分组的格式以及用作小数点的字符取决于扫描器的区域设置(locale settings),这可以通过 useLocale() 方法来更改。

什么是标记(token)?

标记是由分隔符分隔开的一串字符。默认的分隔符是一组空白字符,但可以使用 useDelimiter() 方法来更改分隔符。

实例

打印字符串中每个浮点数的值:

// 创建一个扫描器对象
Scanner myObj = new Scanner("概率是 45.6 百分比");

// 打印扫描器中每个浮点数的值
while (myObj.hasNext()) {
  if (myObj.hasNextDouble()) {
    System.out.println(myObj.nextDouble());
  } else {
    myObj.next(); // 如果当前标记不是浮点数,则跳过它
  }
}

语法

public double nextDouble()

技术细节

返回: 返回 double 类型的值,该值包含标记所表示的数字。
抛出:
  • InputMismatchException - 如果标记不代表一个有效的数字
  • NoSuchElementException - 如果扫描器中没有更多的标记
  • IllegalStateException - 如果扫描器已经被关闭