Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.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 如何将数字格式化为点_Java_Android_Number Formatting - Fatal编程技术网

Java 如何将数字格式化为点

Java 如何将数字格式化为点,java,android,number-formatting,Java,Android,Number Formatting,我有一个5位数的数字,我想在这个数字的最后一步加一个点/逗号 1234 to 123,4 2564 to 256.4 我试过了,但没有成功 int val=1234; NumberFormat number = NumberFormat.getInstance(); number.setMaximumFractionDigits(3); String output = number.format(val); 你能帮帮我吗?提前感谢。如果你在处理整数,最简单的方法是将其除以10,然后将其转换为

我有一个5位数的数字,我想在这个数字的最后一步加一个点/逗号

1234 to 123,4
2564 to 256.4
我试过了,但没有成功

int val=1234;
NumberFormat number = NumberFormat.getInstance();
number.setMaximumFractionDigits(3);
String output = number.format(val);

你能帮帮我吗?提前感谢。

如果你在处理整数,最简单的方法是将其除以10,然后将其转换为双精度

int a = 1234;
double b = (double) a/10;
这将把1234变成123.4


编辑:此答案基于您的确切问题。将逗号放在最后一位之前。

您可以使用此代码在最后一位之前添加任何字符

String str = String.valueOf(1234);
Integer position = str.length()-1;
String newVal = str.substring(0, position) + "." + str.substring(position);
System.out.println(newVal); //123.4

这回答了你的问题吗?不清楚您是要将
还是
放在最后一位之前。您也可以编写
a/10.0
,而不是
(双精度)a/10
。谢谢您的回答。这对我来说很管用。我怎样才能关闭这个问题?你不关闭它,你只接受正确的答案。其他人可能会遇到与您相同的问题,并有望找到此线程和解决方案。酷。非常感谢。我怎样才能结束这个问题