所以我想把我的双值换成只包含2位小数的数字,但是无法弄清楚如何做到这一点。如何更改我的代码以获得2个舍入为2位小数的值?任何帮助都将不胜感激。
btnAdd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
num1 = Double.parseDouble(numBase.getText().toString());
num2 = Double.parseDouble(numNikotin.getText().toString());
sum = num1 / 20 * num2;
String resultN = Double.toString(sum);
String.format("%.2f", resultN);
addResult.setText(resultN);
sum = num1 - sum;
String resultB = Double.toString(sum);
String.format("%.2f", resultB);
addResult2.setText(resultB);
}
});
答案 0 :(得分:4)
String.format(...);
返回一个新的String。您必须将其分配给变量:
resultN= String.format("%.2f", sum );
参数也必须是数字。
有关详细信息,请参阅javadoc
答案 1 :(得分:0)
请查看以下帖子: round up to 2 decimal places in java?
double roundOff = Math.round(a * 100.0) / 100.0;
或
String roundOffTo2DecPlaces(float val)
{
return String.format("%.2f", val);
}
答案 2 :(得分:0)
使用此
String resultN = String.format("%.2f", sum);
为什么要施放到字符串?????????
String resultN = Double.toString(sum);
String.format("%.2f", resultN);