gpt4 book ai didi

java - 无法真正管理 的 map (已编辑)

转载 作者:行者123 更新时间:2023-12-01 07:39:13 26 4
gpt4 key购买 nike

我有一个

   map<Float,Object>.

我需要它存储值(value),例如

0.01 ->ObjA
0.02 ->ObjB

有时

0.001 ->ObjA
0.002 ->ObjB(点后三位数字)

我以为这很容易。
但我注意到,当我用 float
进行简单计算时我有时会收到这样的东西。

0.09998
0.02001 ----- 而不是 (0.01, 0.02)

我知道 float 不太适合这种用法,所以我尝试了两次,显然我得到了一张充满了
的 map 0.0999999998
0.0200000001
自然而然。

所以我想我应该把它四舍五入。但这并不容易,因为我不知道要多大。

有时应该是 0.03,有时应该是 0.3。
感谢你的协助。

<小时/><小时/>

编辑:感谢您的所有回答。我认为我的问题是我得到 5.00001 而不是 5 。并不是我在 map 上输入 5.000001 。我想将 float 四舍五入到我能找到的最佳值。由于它始终是 0.0000000X 或 0.999999X 我认为这应该很容易。但我还没想明白。

<小时/>

最佳答案

尝试使用

Map<BigDecimal, Object> 

BigDecimal 将允许您精确定义浮点值。

关于java - 无法真正管理 <Float,Object> 的 map (已编辑),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7485100/

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