Java.util.Scanner 类

java.util.Scanner.nextFloat() 方法用于将输入的下一个标记扫描为浮点数。如果下一个标记无法转换为有效的浮点值,则此方法将抛出 InputMismatchException,如下所述。如果翻译成功,扫描器将前进到匹配的输入。

语法

public float nextFloat()

参数

不需要参数。

返回值

返回从输入扫描的浮点数。

异常

  • 抛出InputMismatchException,如果下一个标记与 Float 正则表达式不匹配,或者超出范围。
  • 如果输入已用尽,则抛出 NoSuchElementException
  • 如果此扫描仪关闭,则抛出 IllegalStateException

示例:

在下面的示例中, java.util.Scanner.nextFloat() 方法用于将输入的下一个标记扫描为浮点数。

import java.util.*;

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

    //要扫描的字符串
    String MyString = "Hello World 10 + 20 = 30.0";

    //创建扫描仪
    Scanner MyScan = new Scanner(MyString);

    while(MyScan.hasNext()) {
      //如果下一个是浮点数
      if(MyScan.hasNextFloat())
        System.out.println("Float value is: "+ MyScan.nextFloat());
      //如果下一个不是浮点数
      else
        System.out.println("No Float Value found: "+ MyScan.next());
    }

    //关闭扫描仪
    MyScan.close();
  }
}

上述代码的输出将是:

No Float Value found: Hello
No Float Value found: World
Float value is: 10.0
No Float Value found: +
Float value is: 20.0
No Float Value found: =
Float value is: 30.0