格式化从Java中的方法返回的double

时间:2011-11-05 21:02:37

标签: java

我有一个返回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);
 }

3 个答案:

答案 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));

reference

答案 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