我在 editText 中格式化数字时遇到问题。我希望用户能够以正整数或负整数(5 或 -5)的形式输入一个数字,并将其格式化为十进制 (.05)。目前,它的格式为 .05.0 而不是 .05,我不知道为什么。此外,如果用户输入错误的文本或将字段留空,我想将 editText 设置为“0”。但是,我得到了一个错误。非常感谢任何帮助。
public void checkPremium(){
double number = Double.parseDouble(premium.getText().toString());
if(premium.getText().toString().equals(".")||premium.getText().toString().equals("-.")||premium.getText().toString().equals("")){
premium.setText("0");
}else if(number >= 1 || number < 10){
premium.setText(".0"+number);
}else if(number >= 10){
premium.setText("."+number);
}else if(number <= -1 || number > -10){
premium.setText(".0"+Math.abs(number));
}else if(number <= -10){
premium.setText("."+Math.abs(number));
}else if(number <1 || number >0){
//Do Nothing
}
}