代码之家  ›  专栏  ›  技术社区  ›  Mark Denom

如何将看起来像int的字符串转换为正确的格式?[复制品]

  •  -2
  • Mark Denom  · 技术社区  · 7 年前

    假设我有一个类似这样的字符串变量。 String milli = "2728462" 有没有办法把它变成这样 2,252,251 我想我需要一段时间。

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

    我要它把 , 如果数字是 1000 然后把它摆成这样 1,000 和 100000 然后 100,000 等。

    如何正确转换这样的字符串变量?

    因为这个

    String s="9990449935";  
    long l=Long.parseLong(s);  
    System.out.println(l);  
    

    意志输出 9990449935 而不是 9,990,449,935

    2 回复  |  直到 7 年前
        1
  •  2
  •   Oleg Cherednik    7 年前

    的基本策略是将数字的字符串表示形式转换为 Number 格式。然后您可以根据给定的 Locale .

    string.format()

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

    编号格式

    System.out.println(NumberFormat.getNumberInstance(Locale.US).format(Long.parseLong("2728462")));
    
        2
  •  0
  •   ferpel    7 年前

    你可以试试

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