DecimalSeparator | サンプルソース | |
---|---|---|
数字をフォーマットするために使われるNumberFormatクラス。指定したロケール(地域)に応じて数字をフォーマットする方法を紹介します。これであなたも国際人の仲間入り!? |
DecimalSeparator.java |
/** * 愛のJava256本ノック for Java 5.0 * Javaサンプルソース ver0.2C "DecimalSeparator" * DecimalSeparator.java 「異なる言語環境で、数値を表示する」 * * 2005/09/23 制作:安永ノリカズ * * 【コンパイル&実行方法】 * >javac DecimalSeparator.java * >java DecimalSeparator * 【キーワード】 * ロケール(locale:地域), ファクトリ(factory)メソッド * 【試してみよう】 * その他の国の表示形式を調べてみる。 * 各国ごとの日付の表示形式を調べてみる。 */ import java.lang.String; import java.lang.System; import java.text.NumberFormat; import java.util.Locale; public class DecimalSeparator { public static void main(String[] A00) { NumberFormat L00; int L01 = 2980; double L02 = 3.14; L00 = NumberFormat.getInstance(Locale.JAPANESE); System.out.printf("日本では %s や %s と数字を書きますが、%n", L00.format(L01), L00.format(L02)); L00 = NumberFormat.getInstance(Locale.GERMANY); System.out.printf("ドイツでは %s や %s と書きます。%n", L00.format(L01), L00.format(L02)); } } /* ■ クラスの外でちょっと一言 ■ JavaのAPIドキュメントを眺めてて、使ったことないクラスや、初めて見るメ ソッドに出会うと、ちょっとワクワクして試しに使ってみたくなります。そし て、たとえ実用的ではなくとも、そこに何かの発見があると得した気分になりま す。 今回のNumberFormat.getInstanceメソッドでのロケール指定はまさにそのパター ン。ロケールとは、言語や文化的地域を表すもので、日付や数値を表示する際に 参照されます。通常は何も指定せずに、その環境のデフォルトのロケール(皆さ んの場合はおそらく日本語)を採用するんですが、このサンプルのように指定す ることも可能です。 僕はこのメソッドに出会って、小数点を.(ピリオド)で表記しない国が、ヨー ロッパを中心にたくさんあることを知りました。ありがとうJavaの国際化。あり がとうNumberFormat。 */