我有一个返回double的方法。当我调用此方法并打印其结果时,它会打印出10.3333333
例如。我希望该方法能够返回类似10.3
的内容。
方法是:
public double getscore() {
int x=0;
double x1=0;
for (int i=0; i<3 ;i++) {
x+=mark[i];
}
x1=x/3;
return (x1);
}
答案 0 :(得分:3)
使用toFixed
方法:
return x1.toFixed(1) // Returns a string that rounds to one decimal place
答案 1 :(得分:3)
double d = 1.234567;
DecimalFormat df = new DecimalFormat("#.#");
System.out.print(df.format(d));
答案 2 :(得分:2)
你总是可以这样做:
String.format("%.1f",doubleValue);
获取具有格式化值的String。
如果你想要的是将值转换为double,你可以这样做:
double doubleValue = 10.333333;
doubleValue = java.lang.Double.parseDouble(String.format("%.1f",doubleValue))
//doubleValue is now 10.3