Locale
少なくとも数字の場合、適切な位置にコンマを追加するだけの認識がありました。しかし、私が試したものとは異なる出力が表示されます。
私は次のことを試しました、
public static void main(String[] args) {
DecimalFormat df = null;
df = (DecimalFormat) DecimalFormat.getInstance(Locale.CHINESE);
System.out.println("Locale.CHINESE "+df.format(12345.45));
df = (DecimalFormat) DecimalFormat.getInstance(Locale.GERMAN);
System.out.println("Locale.GERMAN "+df.format(12345.45));
}
出力:
Locale.CHINESE 12,345.45
Locale.GERMAN 12.345,45
コンマを注意深く見ると、大きな違いがわかります。
... タスクを実行するためにロケールを必要とする操作は、ロケール依存と呼ばれ、ロケールを使用してユーザーの情報を調整します。たとえば、数値の表示はロケールに依存する操作です。数値は、ユーザーの母国、地域、または文化の慣習/慣習に従って書式設定する必要があります...
Locale
値が変更されているため、コンマが別の で小数点として解釈されていることがわかります。これは本当に興味深いことです。
だから、これを理解するのを手伝ってください。正確には何Locale
ですか?出力の大幅な変更により、コード/データに大きな問題が発生することはありませんか?