在将double加到字符串并尝试格式化后尝试获取两位小数时,我遇到了一个小问题
// Given the plane equation
let distance = planeEquation.x * vertex.x +
planeEquation.y * vertex.y +
planeEquation.z * vertex.z +
w
任何人都可以帮我改进上面的代码行,以便显示两位小数吗?您还会注意到我试图在美元符号和值
之间留一个空格答案 0 :(得分:14)
您可以使用String.format("%.2f", d)
,您的双倍会自动舍入
pieChart.setCenterText("$ " + String.format("%.2f", d));
答案 1 :(得分:2)
以下代码可能对您有所帮助
double a = 1.234567;
double a = 2;
NumberFormat nf = new DecimalFormat("##.##");
System.out.println(nf.format(a));
System.out.println(nf.format(a));
,输出将是
1.23
2
如果需要,它只显示小数位,享受! :)
答案 2 :(得分:0)
尝试这样
pieChart.setCenterText("$ " + String.format("%.2f", dataCost));
答案 3 :(得分:0)
您可以使用DecimalFormat。
import java.text.DecimalFormat;
DecimalFormat money = new DecimalFormat ("$0.00");
System.out.println(money.format(dataCost));
答案 4 :(得分:0)
试试这个。
float val = 1245.235645f;
double ans = Double.parseDouble(new DecimalFormat("##.##").format(val));
System.out.println(ans);
注意:##。##表示。(点)
后会显示2位数字
Package : import java.text.DecimalFormat;
这应该对你有帮助。