在我的应用程序中,我希望能够将数字格式化为字符串(带逗号),例如123456.000到123,456.000。但问题是当我键入零时(0)作为小数点后的最后一个数字,在我键入另一个数字之前,它什么也不显示。例如,如果我键入123456. 000,我得到123,456。零不会显示,直到我键入另一个数字,如“1”,然后我得到123,456.0001。请问我如何使零显示为小数点后的最后一个数字?下面是一些示例代码。
我为代码的笨拙道歉。我是用手机手动输入的。
TextView txtView;
boolean NumberClicked = false;
String number = "";
// format pattern
DecimalFormat formatter = new DecimalFormat("#,###.#########");
// input dot (decimal point)
dot.setOnClickListener (new View.OnClickLstener() {
public void onClick(View view) {
if (!txtView.getText.toString.contains(".") {
input(".");}}});
// input zero (0)
zero.setOnClickListener (new View.OnClickLstener() {
public void onClick(View view) {
input("0");
}});
// input one (1)
one.setOnClickListener (new
View.OnClickLstener() {
public void onClick(View view) {
input("1");}});
// input method
public void input (String view) {
if (!numberClicked) {
number = view;
numberClicked = true;
} else {
number = number + view;
}
// print the entered numbers to
//the TextView after formatting
if (!number.endsWith(".")) { txtView.setText(formatter.format(Double.parseDouble(number)));}}
在此输入代码
2条答案
按热度按时间wribegjk1#
您可以尝试以下代码片段:
产量:123 456 000
欲了解更多信息,请click here.
yc0p9oo02#
尝试: