Java.util.Scanner.nextDouble()


描述

所述java.util.Scanner.nextDouble()方法扫描输入作为双的下一个标记。如果下一个标记无法转换为有效的double值,则此方法将抛出InputMismatchException。如果翻译成功,扫描仪将超过匹配的输入。

声明

以下是java.util.Scanner.nextDouble()方法的声明

public double nextDouble()

参数

NA

返回值

此方法返回从输入扫描的双精度数

异常

InputMismatchException - 如果下一个标记与Float正则表达式不匹配,或者超出范围

NoSuchElementException - 如果输入已用尽

IllegalStateException - 如果此扫描程序已关闭

实例

以下示例显示了java.util.Scanner.nextDouble()方法的用法。

package com.tutorialspoint;

import java.util.*;

public class ScannerDemo {
   public static void main(String[] args) {

      String s = "Hello World! 3 + 3.0 = 6 true";

      // create a new scanner with the specified String Object
      Scanner scanner = new Scanner(s);

      // use US locale to be able to identify doubles in the string
      scanner.useLocale(Locale.US);

      // find the next double token and print it
      // loop for the whole scanner
      while (scanner.hasNext()) {

         // if the next is a double, print found and the double
         if (scanner.hasNextDouble()) {
            System.out.println("Found :" + scanner.nextDouble());
         }

         // if a double is not found, print "Not Found" and the token
         System.out.println("Not Found :" + scanner.next());
      }

      // close the scanner
      scanner.close();
   }
}

让我们编译并运行上面的程序,这将产生以下结果

Not Found :Hello
Not Found :World!
Found :3.0
Not Found :+
Found :3.0
Not Found :=
Found :6.0
Not Found :true