java - 输入不匹配异常

标签 java exception input mismatch

当我输入 5、7、14 等整数时,一切正常。但是当我输入 for example 7.5 时出现错误。哪里错了?

    Exception in thread "main" java.util.InputMismatchException
    at java.base/java.util.Scanner.throwFor(Scanner.java:939) 
    at java.base/java.util.Scanner.next(Scanner.java:1594) 
    at java.base/java.util.Scanner.nextDouble(Scanner.java:2564) 
    at Exercise_11.main(Exercise_11.java:8)

代码如下:

    import java.util.Scanner;
    public class Exercise_11 {
    public static void main(String[] args) {
    Scanner radius = new Scanner(System.in);
    System.out.print("Please input the radius of circle: ");
    double r= radius.nextDouble();
    double l= 2*Math.PI*r;
    double s= Math.PI*r*r;
    System.out.println("Length = " + l);
    System.out.println("Area = " + s);
    }
    }

input number is 12

Error with input number 7.5

最佳答案

您的系统区域设置不支持点作为小数点分隔符。使用支持点作为分隔符的语言环境,例如Locale.ENGLISH

Scanner radius = new Scanner(System.in).useLocale(Locale.ENGLISH);

示例运行:

Please input the radius of circle: 7.5
Length = 47.12388980384689
Area = 176.71458676442586

关于java - 输入不匹配异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65451993/

相关文章:

java - Android-Eclipse项目制作和R文件错误

c# - 即使在 try catch 之后继续执行程序

c++ - 使用 cin ERROR 输入多个 float

java - 使用 Java Jar 实用程序

java - 在 Java 中使用 For 循环和数组计算最终成绩

java - 如何使用 spring-social 从 Facebook 获取个人资料图片 url?

c# - 替换 c# 中的 try...catch block

Java-当特定序列发生时读取文本文件

javascript - Backbone - 如何在主干 View 中的文件输入更改事件上传递 this.files

Netty客户端的Java输入