正如标题所说:
我试过了:
Float.toString(float);
String.valueOf(float);
Float.toHexString(float);
float.toString();
但我发现Float值是否为100.00; 隐藏到字符串值将为100.0。 怎么避免呢?如何准确?
提前致谢。
编辑-------------
答案指出那些特定小数位的那些。
答案 0 :(得分:4)
确切地说,您最好尝试使用NumberFormat类层次结构将Float格式化为String:http://docs.oracle.com/javase/6/docs/api/java/text/NumberFormat.html
答案 1 :(得分:1)
最终保持2个零的“愚蠢”。您所要做的就是在打印时根据需要添加尽可能多的零,但在内部,它将保存为x.0
示例:
printf ("%.2f", 3.14159);
打印:
3.14
答案 2 :(得分:0)
如果你愿意这样做......
当你得到str =" 100.0&#34 ;;
String[] strNew = str.split(".");
if(strNew[1].length==1)
{
str=str+"0";
}
BTW一种非常糟糕的方式......
答案 3 :(得分:0)
float f = 100.00000f;
String expected = String.format("%.6f", f);
输出结果如下:
100.000000
浮点数后的数字长度由你完成。
String.format(“%。6f”,f)== 100.000000
String.format(“%。2f”,f)== 100.00