gpt4 book ai didi

java - float 返回指数表示法

转载 作者:搜寻专家 更新时间:2023-11-01 01:35:53 24 4
gpt4 key购买 nike

我正在编写一些用于导致问题的 Xpath 查询的代码。我试图从列表中读取一个随机名称,但是 float (x) 偶尔会返回指数表示法。

Random r = new Random();
float x = r.nextFloat();

final String expression = "(/list/name[@minLevel<=" + minLevel + "])" +
"[(" + x + " * count(/list/name[@minLevel<=" + minLevel + "])) +1]";

每隔一段时间,表达式等于:

(/name/list[@minLevel<=11])[(5.478859E-4 * count(/name/list[@minLevel<=11])) +1]

显然 xpath 不使用指数符号进行数学计算,因为我得到了这个错误:

javax.xml.transform.TransformerException: 5.478859E-4 could not be formatted to a number!

如能提供任何有关如何防止这种情况的帮助,我们将不胜感激。

最佳答案

要转换 float ,您可以使用 String.format()%f作为格式说明符。这永远不会使用科学记数法。

String.format("%f", x)

这也让您可以根据需要灵活地调整宽度和精度。

关于java - float 返回指数表示法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14126322/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com