AlertDialog 中的 String + Double

String + Double in AlertDialog

我的问题是:

Double result = SubActivity.this.resultado(SubActivity.this.num1, SubActivity.this.pes1, SubActivity.this.num2, SubActivity.this.pes2, 
    SubActivity.this.num3, SubActivity.this.pes3, 
    SubActivity.this.num4, SubActivity.this.pes4, 
    SubActivity.this.num5, SubActivity.this.pes5);                  

AlertDialog.Builder builder = new AlertDialog.Builder(SubActivity.this);                    
builder.setIcon(R.drawable.ic_launcher);                    
builder.setTitle(R.string.result);                    
builder.setMessage(R.string.n + result);                    
builder.setPositiveButton("OK", null);                    
builder.show();                 
return;

但是我得到一个错误:

There is no applicable method to '(double)'

如何添加字符串?

我认为您的问题是存在从字符串到双精度的隐式转换,因为您的函数 returns 是一个字符串,但您在其中存储的是双精度类型的结果。

您的代码:

Double result = String functionThatReturnsAString();

您需要使用 Double.parseDouble() 函数进行转换

Double result = Double.parseDouble(functionThanReturnsAString());

尝试-

builder.setMessage(Double.parseDouble(getResources.getString(R.String.n))+ result)+"");

(您可能需要修改一下才能从 R.string.n

中获取字符串


the reference