位置:首页 > Java技术 > Java.util包 > java.util.Scanner.nextDouble()方法实例

java.util.Scanner.nextDouble()方法实例

java.util.Scanner.nextDouble() 方法扫描输入的下一个标记为double。此方法将抛出InputMismatchException如果下一个标记不能转换为有效的double值。如果转换成功,则scanner执行匹配的输入。

声明

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

public double nextDouble()

参数

  • NA

返回值

此方法返回从输入信息扫描的double值

异常

  • InputMismatchException -- 如果下一个标记不匹配的浮动正则表达式,或者是超出范围

  • NoSuchElementException -- 如果输入被耗尽

  • IllegalStateException -- 如果此scanner 已关闭

例子

下面的示例演示java.util.Scanner.nextDouble()方法的用法。

package com.yiibai;

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