如何将看起来像int的String转换为正确的格式?

时间:2019-02-11 17:45:32

标签: java

假设我有一个看起来像这样的String变量。 String milli = "2728462"可以将其转换为如下形式 2,252,251,我想我想要很长的时间。

问题是它将以这种格式传递字符串 1512 52 15010 1622274628

,并且我希望它将,字符放置在需要的位置,因此如果数字为1000,则将其放置为1,000100000,然后放置{{1 }}等

如何正确地像这样转换String变量?

因为这个

100,000

将输出String s="9990449935"; long l=Long.parseLong(s); System.out.println(l); 而不是9990449935

2 个答案:

答案 0 :(得分:2)

基本策略是将数字的字符串表示形式转换为Number格式之一。然后,您可以使用以下选项根据给出的Locale来表示此数字。

String.format()

System.out.format(Locale.US, "%,d", Long.parseLong("2728462"));

NumberFormat

System.out.println(NumberFormat.getNumberInstance(Locale.US).format(Long.parseLong("2728462")));

答案 1 :(得分:0)

您可以尝试

String milli = "2728462"
System.out.println(NumberFormat.getInstance(Locale.US).format(Long.parseLong(milli)));