Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何让Android自动添加逗号?_Java_Android - Fatal编程技术网

Java 如何让Android自动添加逗号?

Java 如何让Android自动添加逗号?,java,android,Java,Android,我用这段代码让它在我的应用程序的文本视图中添加逗号。但当我运行我的应用程序时,它什么都不做?我做错了什么?好的。我测试了一下,得到了解决方案 String number = textView1.getText().toString(); double amount = Double.parseDouble(number); DecimalFormat formatter = new DecimalFormat("#,###.00"); String formatted = formatter.f

我用这段代码让它在我的应用程序的文本视图中添加逗号。但当我运行我的应用程序时,它什么都不做?我做错了什么?

好的。我测试了一下,得到了解决方案

String number = textView1.getText().toString();
double amount = Double.parseDouble(number);
DecimalFormat formatter = new DecimalFormat("#,###.00");
String formatted = formatter.format(amount);

textView1.setText(formatted);
==>>输出在这里:12345678,90 你必须把你的双精度除法才能得到逗号

版本的双精度值是123456789.00-->除以10。。或者随便你喜欢它得到12345678.90。。。在这种情况下,一个简单的

String in = "123456789";            
double amount = Double.parseDouble(in);         
amount = amount / 10;       
DecimalFormat df = new DecimalFormat(".00");        
String formatted = df.format(amount);           
System.out.println(formatted);
那就足够了。但是如果您将十进制格式更改为

String.valueOf(amount);

你的输出是==>12.345.678,90

你说它完全不起作用是什么意思?我运行应用程序。数字看起来就像:123456789-没有逗号记录字符串时会发生什么?log.v(“十进制字符串”,格式化);08-28 18:21:28.533:V/十进制字符串(804):0未执行任何操作:(哦,sry…我得到了这个…你将其解析为双精度…因此你的新值是(字符串-->1234-->1234.0),因此在我的编辑中有一个“.”更改了它,但仍然没有运气?在Logcat中它更改为“000.00”
DecimalFormat df = new DecimalFormat(",###.00");