将double转换为string

我不知道这是我还是什么,但我有一个问题转换成一个双重string。

这里是我的代码:

double total = 44; String total2 = Double.toString(total); 

我做错了什么,或者我错过了这里的一步。

当试图转换这个时,我得到错误NumberFormatException

 totalCost.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { try { double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double total = priceG * valG; String tot = new Double(total).toString(); totalCost.setText(tot); } catch(Exception e) { Log.e("text", e.toString()); } return false; } }); 

我正在尝试在onTouchListener中执行此操作。 我发表更多的代码,基本上当用户触摸edittext框我想要的信息来计算填充edittext框。

 double total = 44; String total2 = String.valueOf(total); 

这将把double转换为String

这段代码编译和为我工作。 它使用您尝试的调用将double转换为string。

 public class TestDouble { public static void main(String[] args) { double total = 44; String total2 = Double.toString(total); System.out.println("Double is " + total2); } } 

我对你看到NumberFormatException感到困惑。 看看堆栈跟踪。 我猜你有其他代码,你没有在你的例子中显示,导致该exception被抛出。

exception可能来自parseDouble()调用。 检查赋予该函数的值是否真的反映了双倍值。

 double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); 

有用。 必须重复。

 double total = 44; String total2= new Double(total).toString(); 

这个代码的作品

 double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); 

其中之一是抛出exception。 你需要添加一些日志/打印,看看volGalpriceGal是什么 – 这不是你的想法。

double.toString()应该工作。 不是variablestypesDouble ,而是variables本身double

只需使用以下内容:

 doublevalue+""; 

这将适用于任何数据types。

例:

 Double dd=10.09; String ss=dd+"";