数字格式异常 - 对于输入字符串:"35,9"

 Th川_546 发布于 2023-02-08 20:24

我需要生成随机值并打印它们.

但它引发了一个异常:

 java.lang.NumberFormatException: For input string: "35,9"
    at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1241)
    at java.lang.Double.parseDouble(Double.java:540)
    at com.epam.lab.model.sweets.SweetsGenerator.paramFormatter(SweetsGenerator.java:71)
    at com.epam.lab.model.sweets.SweetsGenerator.next(SweetsGenerator.java:55)
    at com.epam.lab.model.NewYearGift.generate(NewYearGift.java:40)
    at com.epam.lab.controller.GiftController.generateGift(GiftController.java:86)
    at com.epam.lab.controller.GiftController.showGiftContent(GiftController.java:213)
    at com.epam.lab.view.Application.process(Application.java:89)
    at com.epam.lab.view.Application.estimateUserInput(Application.java:49)
    at com.epam.lab.view.Application.start(Application.java:43)
    at com.epam.lab.view.Main.main(Main.java:19)

它只发生在这里:

public Sweets next() {      
    Sweets current = instances[rand.nextInt(instances.length)];
    double sugarParam = paramFormatter(randomSugarLevel(), PRECISION);
    double weightParam = paramFormatter(randomWeight(), PRECISION);

    try {
        return (Sweets) current.getClass()
                .getConstructor(double.class, double.class)
                .newInstance(sugarParam, weightParam);
        // Report programmer errors at run time:
    } catch (Exception e) {
        LOG.error("RuntimeException", e);
        throw new RuntimeException(e);
    }
}


private double paramFormatter(double sugarParam, DecimalFormat df) {
    return Double.parseDouble(df.format(sugarParam));
}


private double randomWeight() {
    return WEIGHT_MIN + (Math.random() * ((WEIGHT_MAX - WEIGHT_MIN) + 1));
}


private double randomSugarLevel() {
    return SUGAR_MIN + (Math.random() * ((SUGAR_MAX - SUGAR_MIN) + 1));
}

精度是恒定的:

private static final DecimalFormat PRECISION = new DecimalFormat("#.#");

但一切看起来都不错.

如何解决这个问题?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有