这是两个float之间的简单添加操作:
float a = 3.9F;
float b = 2.95F;
Log.i("Operation","sum: "+String.valueOf(a+b));
这返回以下输出:
11-26 15:02:15.680: I/Operation(18403): sum: 6.8500004
如何获得正确的值(6.85)?
答案 0 :(得分:3)
您应该使用DecimalFormat
类。
示例
DecimalFormat decFormat = new DecimalFormat("#.##");
Log.i("Operation", "sum: " + decFormat.format(a + b));
如果你想确保总有两个小数位,即:2.90
或2.00
,那么你可以这样做:
DecimalFormat decFormat = new DecimalFormat("0.00");
Log.i("Operation", "sum: " + decFormat.format(a + b));
答案 1 :(得分:0)
试试这个......
DecimalFormat format = new DecimalFormat("###.##");
String val = format.format(1.2223F+1.4334F);
System.out.println(val);
答案 2 :(得分:0)
您可以使用System.out的格式化方法,以便您可以决定具体的输出格式:
float a = 3.9F;
float b = 2.95F;
System.out.format("%.2f", a + b);
输出将是:
6.85
在这里,正如你猜测的那样,%f采用float类型的参数而。%和f之间的.2意味着你想要输出这个带有2个十进制数的float参数。