我的数据库中有一个条目
select item_numeric_value from Item_Allowed_Values where id=761
我的数据库中item_numeric_value
的数据类型为float
。
我得到的结果是1.11111111111111E+49
。
当我在字符串中检索java中的这个值时,我得到无穷大。
我有什么遗漏或做错了吗?
答案 0 :(得分:1)
您应该使用double
代替float
:
// Float.MAX_VALUE = 3.4028234663852886E38f
float f = Float.parseFloat("1.11111111111111E+49");
System.out.println("f=" + f); // -> f=Infinity
// Double.MAX_VALUE = 1.7976931348623157E308
double d = Double.parseDouble("1.11111111111111E+49");
System.out.println("d=" + d); // -> d=1.11111111111111E49