Android 执行计算后更改双倍数字的显示格式

Android 执行计算后更改双倍数字的显示格式,android,string,decimal,android-edittext,number-formatting,Android,String,Decimal,Android Edittext,Number Formatting,我使用双精度计算器进行计算,如下所示: int minutes; double seconds; double DecMinutes; // Handle Dd in; DMS, and DMm out Calculate myCalculate = new Calculate(inDecimal); { double outMinutes = myCalculate.getMinute(); double outSeconds = myCalculate.getSecond(); doub

我使用双精度计算器进行计算,如下所示:

int minutes;
double seconds;
double DecMinutes;


// Handle Dd in; DMS, and DMm out
Calculate myCalculate = new Calculate(inDecimal); {
double outMinutes = myCalculate.getMinute();
double outSeconds = myCalculate.getSecond();
double outDecMinute = myCalculate.getDecMinute();


minutes = (int) outMinutes;
seconds = outSeconds;
DecMinutes = outDecMinute;


} // end myCalculate

// Convert result back to String
c = Integer.toString(minutes);
((EditText)findViewById(R.id.txtDMSLatMin)).setText(c);
((EditText)findViewById(R.id.txtDMmLatMin)).setText(c);
c = Double.toString(seconds);
((EditText)findViewById(R.id.txtDMSLatSec)).setText(c);
c = Double.toString(DecMinutes);
((EditText)findViewById(R.id.txtDMmLatDecMin)).setText(c);
我主要关心的是双精度输出。因为这是十进制的分钟数计算,所以我需要使用double。我的布局已将小数点显示为固定字符,因此我希望在编辑文本框txtDMmLatDecMin中显示0734,而不是显示0.0734


谢谢

那么基本上,你想去掉零和小数点吗

也许有一个更简单的方法,但在我的脑海里,我想你可以用。缺点是必须创建一个新的字符串数组来保存这些值

因此,在您这样做之后:

c = Double.toString(DecMinutes);
String[] strSplit = c.split("\\.");
然后你可以做:

((EditText)findViewById(R.id.txtDMmLatDecMin)).setText(strSplit[1]);

再说一次,也许有更简单的方法。:)

好极了!谢谢…我确实必须使用String[]strSplit=c.split(“\\”);由于句号是保留的regex.Hi,如果您能够使用该答案解决问题,请记住接受正确的答案。非常感谢,谢谢!:)