java decimalformat 符号 - 数千のコンマで文字列に変換する




5 Answers

あなたは最も素早く求めますが、おそらくあなたは「最高」か「正しい」か「典型的」を意味しますか?

あなたはまた、何千ということを示すためにコンマを要求しますが、おそらく "あなたのユーザーの地元の習慣に従った人間が読める形式で普通の意味で"を意味しますか?

あなたはそうする:

    int i = 35634646;
    String s = NumberFormat.getIntegerInstance().format(i);

アメリカ人は "35,634,646"

ドイツ人は "35.634.646"

スイスのドイツ人は "35'634'646"

string カンマ 数値

Integer 35634646を1000に変換したいので、35,634,646にする必要があります。

それを行うための最も速い方法は何でしょうか?




double value = 21403.3144d;
String.format("%,.2f", value);

出力

21,403.31



他の答えは正しいですが、 "%,d"を使用する前にあなたのロケールを再確認してください:

Locale.setDefault(Locale.US);
int bigNumber = 35634646;
String formattedNumber = String.format("%,d", bigNumber);
System.out.println(formattedNumber);

Locale.setDefault(new Locale("pl", "PL"));
formattedNumber = String.format("%,d", bigNumber);
System.out.println(formattedNumber);

結果:

35,634,646
35 634 646



コンマで%d形式指定子を使用します: %,d

これははるかに簡単な方法です。




あなたは

System.out.printf("%n%,d",int name);

printfのカンマは、カンマを%d interに追加する必要があります。

それについて肯定的ではないが、私のために働く。




Related