我无法格式化该格式的十进制值格式(8487.0)。 " 8.48"
我已尝试过此处发布的其他问题的解决方案,但我没有成功。
示例:
Double n1 = Double.parseDouble (String.valueOf (8487.0));
DecimalFormat dec = new DecimalFormat ("#. ##");
String credits = dec.format (n1); Log.d (TAG, "test" + credits);
目前它的输出如下:8487
欢迎任何帮助,谢谢。
答案 0 :(得分:1)
您可以使用字符串格式
String answer = String.format("%.2f", (8487.0 / 1000));
Log.d(TAG, answer); //8.49
答案 1 :(得分:1)
有两种情况;是否要四舍五入。这是两个案例的示例代码。
double d = 8487.0;
d /= 1000;
DecimalFormat f = new DecimalFormat("##.00");
f.setRoundingMode(RoundingMode.FLOOR);
String notRounded = f.format(d);
System.out.println("Not Rounded: " + notRounded);
f.setRoundingMode(RoundingMode.HALF_UP);
String rounded = f.format(d);
System.out.println("Rounded: " + rounded);
答案 2 :(得分:0)
那么,您想将数量减少1000倍吗?例如克到公斤?
Double n1 = Double.parseDouble (String.valueOf (8487.0));
Double n2 = n1 / 1000;
DecimalFormat dec = new DecimalFormat ("#. ##");
String credits = dec.format(n2);
Log.d (TAG, "test" + credits);