我有一个单位转换器。当我输入10000000摄氏度的值以转换为华氏温度时,我得到答案1.8000032E7。这是正确的答案,但如何让应用程序显示180000320而不是1.8000032E7 ??
这是我的Java代码的一部分。
celsiusET.addTextChangedListener(new TextWatcher() {
double in,out;
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(!machineChange) {
machineChange = true;
if(s.toString().equals("-")) {
kelvinET.setText("");
fahrenheitET.setText("");
}
else if(s.toString().equals(".")) {
kelvinET.setText("");
fahrenheitET.setText("");
}
else if(!s.toString().equals("")) {
in = Double.parseDouble(s.toString());
out = ((in*9)/5)+32;
fahrenheitET.setText(String.valueOf(out));
out = in+273.15;
kelvinET.setText(String.valueOf(out));
}
else {
kelvinET.setText("");
fahrenheitET.setText("");
}
machineChange = false;
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
答案 0 :(得分:1)
私有DecimalFormat格式化程序;
formatter = new DecimalFormat(“#,##,##,###”);
act_income_basic_sal_etxt.setText(formatter.format((int)的myApplication.getTaxCalculationModel()getA3())。);
在DecimalFormat中指定您的格式,您将获得所需的数字。
答案 1 :(得分:0)
DecimalFormat
可以为您做到这一点。
DecimalFormat是格式化的NumberFormat的具体子类 十进制数。它具有各种旨在实现它的功能 可以解析和格式化任何语言环境中的数字,包括支持 适用于西方,阿拉伯和印度数字。它也支持不同 各种数字,包括整数(123),定点数 (123.4),科学记数法(1.23E4),百分比(12%)和货币 金额(123美元)。所有这些都可以进行本地化。