这可能是一个很简单的问题,但我找不到任何提示。
我已经检查了下面的链接,但仍然找不到我的代码有什么问题。
Returning a double from a method
Easiest way to return double from another class
我想要的是返回一个返回2十进制双精度数的方法。
调用下面的方法,但它没有运行。

toDouble(double1);//the result are not 2 decimals
edittext.setText(String.valueOf(double1));

public double toDouble(double d){
  String str = String.format("%1.2f", d);
  d = Double.valueOf(str);
  return d;
}

当我像这样编码的时候它工作得很好
  String str = String.format("%1.2f", double1);
  double1 = Double.valueOf(str);

有人能指导我吗?
编辑1
如果有人读到这个。这是个愚蠢的错误。
**忘记定义双精度
double1 = toDouble(double1);//the result are not 2 decimals
edittext.setText(String.valueOf(double1));

最佳答案

您应该将该值传递给方法,您错误地将值直接设置在settext中
下面的代码是错误的

edittext.setText(String.valueOf(double1));

相反,你应该写
edittext.setText(String.valueOf(toDouble(double1)));

08-28 20:15