CodeGym /Java Blog /ランダム /Java ロケール クラス
John Squirrels
レベル 41
San Francisco

Java ロケール クラス

ランダム グループに公開済み
世界中に同じコンセントがあれば、数字と日付を書くという原則がもっと簡単になるでしょう。ただし、これはまだ現実ではないため、プログラマはこれを考慮する必要があります。特に、java.util.Localeクラスを使用すると、アルファベット、記号、数字、日付の地域表現の特性を考慮に入れることができます。この記事では、Java Localeクラスを取り上げ、その使用例を示します。

ロケールとは

Microsoft Windows オペレーティング システムをインストールするときに、国と言語について尋ねられます。実際、そのような瞬間はLocaleの使用に関連しています。国と言語を指定してLocaleクラスのオブジェクトを作成すると言えます。これにより、日付と時刻の表示など、他の関連設定が表示されます。Java 仮想マシンは、オペレーティング システムから地域設定を取得します。ただし、Java のデフォルトのロケールは、必要に応じて特別な方法を使用して変更できます。

Java Localeクラスのオブジェクトの作成

一部の国では、ロケール設定は次のような定数を使用して設定されます。

Locale.US
Locale.UK
他のすべての国では、次のように Localeクラス のオブジェクトをコンストラクターを使用して作成する必要があります。

Locale ukr = new Locale("ukr", "UA");
Locale.ROOT定数 があります。ロケール ルートは、言語と国が空の文字列 ("") に等しいロケールを表します。このロケールは、他のすべてのロケールの基本ロケールです。ロケールに依存しないアプリケーションを作成するために使用されます。小さな例を挙げてみましょう。

import java.util.Locale;

public class LocaleExample1 {

   public static void main(String[] args) {
       var uk = Locale.UK;
       System.out.println(uk);
       Locale ua = new Locale("ukr", "UA");
       System.out.println(ua);
          }

   }
出力は次のとおりです。
en_GB ukr_UA

ロケールクラスのメソッド。現在のロケールを確認または変更する方法

JavaにはLocaleクラスのメソッドがたくさんあります。これらはJavadoc から学ぶことができます。ここではそのうちのほんの一部を紹介します。現在のロケール設定は、 Locale.getDefault()メソッドを使用して確認できます。

 Locale current = Locale.getDefault();
setDefault() メソッドを使用して、JVM の現在のインスタンスの現在のロケールを変更できます。

Locale.setDefault(Locale.CANADA);
メソッドString get Country() は、このロケールの国または地域コードを返します。空の文字列 (大文字の ISO 3166 2 文字コード) または UN M.49 3 桁コードのいずれかになります。 String getDisplay Country() は、ユーザーへの表示に適したロケールの国名を返します。 String getDisplay Country(Locale inLocale) は、ユーザーへの表示に適したロケールの国の名前を返します。 String getDisplayLanguage() は、ユーザーへの表示に適したロケールの言語の名前を返します。 String getDisplayLanguage(Locale inLocale) は、ユーザーへの表示に適したロケールの言語の名前を返します。 String getLanguage() はLocaleの言語コードを返します。

ロケールクラスの例


import java.util.Locale;
//Locale Example 
public class LocaleExample1 {

   public static void main(String[] args) {
       var uk = Locale.UK;
       System.out.println(uk);
       Locale ua = new Locale("ukr", "UA");
       System.out.println(ua);
       Locale.setDefault(Locale.CANADA);
       Locale current = Locale.getDefault();

       getLocaleInfo(current);
       getLocaleInfo(ua);
       getLocaleInfo(uk);
   }

   private static void getLocaleInfo(Locale current) {
       System.out.println("Country code: " + current.getCountry());
       System.out.println("Name of the Country: " + current.getDisplayCountry());
       System.out.println("Language Code: " + current.getLanguage());
       System.out.println("Language Name: "
               + current.getDisplayLanguage());
       System.out.println();
   }
}
出力は次のとおりです。
en_GB ukr_UA 地域コード: CA 国名: カナダ 言語コード: en 言語名: 英語 地域コード: UA 国名: ウクライナ 言語コード: ukr 言語名: ウクライナ語
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION