java解析浮点,而不创建具有指数的浮点数

java解析浮点,而不创建具有指数的浮点数,java,primitive-types,Java,Primitive Types,我尝试解析一个字符串,如下所示: Float.parseFloat(value_.toString()); 当我解析一个字符串数字时,比如:“13299802.60”, 我得到这个:1.3299803E7 我想得到浮点数,就像没有指数符号的字符串一样 如何做到这一点 提前谢谢。用这个代替 new java.lang.BigDecimal(value_.toString()); BigDecimal实际上是十进制数,而不是浮点数。2(2个十进制数字)的刻度将保持不变请改用此刻度 new jav

我尝试解析一个字符串,如下所示:

Float.parseFloat(value_.toString());
当我解析一个字符串数字时,比如:“13299802.60”, 我得到这个:1.3299803E7

我想得到浮点数,就像没有指数符号的字符串一样

如何做到这一点

提前谢谢。

用这个代替

new java.lang.BigDecimal(value_.toString());
BigDecimal实际上是十进制数,而不是浮点数。2(2个十进制数字)的刻度将保持不变

请改用此刻度

new java.lang.BigDecimal(value_.toString());

BigDecimal实际上是十进制数,而不是浮点数。2(2位十进制数字)的刻度将保持

浮点的默认输出格式是大于一定大小的科学记数法


如果要以正常的十进制表示法输出,请在打印时使用格式字符串为“#.00”的NumberFormat。

浮点的默认输出格式是大于一定大小的科学表示法


如果要以普通十进制表示法输出,请在打印时使用格式字符串为“#.00”的NumberFormat。

浮点为32位,最多有7位数或精度。如果您想要更高的精度,请使用double,它是64位的,最多有16位精度(事实上,始终使用double或BigDecimal)

印刷品

As float 13299803.00
As double 13299802.60
As BigDecimal 13299802.60

浮点为32位,最多有7位数或精度。如果您想要更高的精度,请使用double,它是64位的,最多有16位精度(事实上,始终使用double或BigDecimal)

印刷品

As float 13299803.00
As double 13299802.60
As BigDecimal 13299802.60

你得到你解析的东西,你如何想象它是一个完全不同的故事,你得到你解析的东西,你如何想象它是一个完全不同的故事