CodeGym /Java-Blog /Random-DE /Java-Locale-Klasse
John Squirrels
Level 41
San Francisco

Java-Locale-Klasse

Veröffentlicht in der Gruppe Random-DE
Es wäre viel einfacher, wenn es auf der ganzen Welt die gleichen Steckdosen gäbe, das Prinzip des Schreibens von Zahlen und Daten. Dies ist jedoch noch nicht der Fall und Programmierer müssen dies berücksichtigen. Insbesondere ermöglicht die Klasse java.util.Locale die Berücksichtigung der Besonderheiten regionaler Darstellungen von Alphabet, Symbolen, Zahlen und Datumsangaben. In diesem Artikel werden wir uns die Java- Locale- Klasse ansehen und Beispiele für ihre Verwendung geben.

Was ist Locale?

Wenn Sie Ihr Microsoft Windows-Betriebssystem installieren, werden Sie nach Ihrem Land und Ihren Sprachen gefragt. Tatsächlich sind solche Momente mit der Verwendung von Locale verbunden . Man kann sagen, dass Sie ein Objekt der Locale- Klasse erstellen und dabei das Land und die Sprache angeben. Dadurch werden weitere verwandte Einstellungen aufgerufen, z. B. die Anzeige von Datum und Uhrzeit. Die Java Virtual Machine ruft die regionalen Einstellungen vom Betriebssystem ab. Das Standardgebietsschema in Java kann jedoch bei Bedarf mit einer speziellen Methode geändert werden.

Erstellen von Objekten der Java Locale-Klasse

Für einige Länder werden die Gebietsschemaeinstellungen mithilfe von Konstanten festgelegt, zum Beispiel:

Locale.US
Locale.UK
Für alle anderen Länder muss ein Objekt der Locale- Klasse mit einem Konstruktor erstellt werden, zum Beispiel:

Locale ukr = new Locale("ukr", "UA");
Es gibt eine Locale.ROOT- Konstante. Das Gebietsschema-Stamm stellt das Gebietsschema dar, in dem Sprache und Land der leeren Zeichenfolge („“) entsprechen. Dieses Gebietsschema ist das Basisgebietsschema für alle anderen Gebietsschemas. Wird zum Schreiben gebietsschemaunabhängiger Anwendungen verwendet. Nehmen wir ein kleines Beispiel.

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);
          }

   }
Hier ist die Ausgabe:
en_GB ukr_UA

Methoden der Locale-Klasse. So ermitteln Sie das aktuelle Gebietsschema oder ändern es

Es gibt viele Methoden der Locale- Klasse in Java. Sie können sie von Javadoc lernen . Hier werfen wir nur einen Blick auf einige davon. Die aktuelle Locale-Einstellung können Sie mit der Methode Locale.getDefault() ermitteln :

 Locale current = Locale.getDefault();
Sie können das aktuelle Gebietsschema für die aktuelle Instanz der JVM mit der Methode setDefault() ändern :

Locale.setDefault(Locale.CANADA);
Die Methodenzeichenfolge getCountry() gibt den Länder- oder Regionscode für dieses Gebietsschema zurück. Dabei kann es sich entweder um eine leere Zeichenfolge (ein zweibuchstabiger ISO 3166-Code in Großbuchstaben) oder um einen dreistelligen UN M.49-Code handeln. Die Zeichenfolge getDisplayCountry() gibt einen Namen für das Land des Gebietsschemas zurück, der für die Anzeige für den Benutzer geeignet ist. String getDisplayCountry(Locale inLocale) gibt einen Namen für das Land des Gebietsschemas zurück, der für die Anzeige für den Benutzer geeignet ist. String getDisplayLanguage() gibt einen Namen für die Sprache des Gebietsschemas zurück, der für die Anzeige für den Benutzer geeignet ist. String getDisplayLanguage(Locale inLocale) gibt einen Namen für die Sprache des Gebietsschemas zurück, der für die Anzeige für den Benutzer geeignet ist. String getLanguage() gibt den Sprachcode des Locale zurück .

Beispiel einer Locale-Klasse


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();
   }
}
Hier ist die Ausgabe:
en_GB ukr_UA Regionalcode: CA Name des Landes: Kanada Sprachcode: en Sprachname: Englisch Regionalcode: UA Name des Landes: Ukraine Sprachcode: ukr Sprachname: Ukrainisch
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION