Sprache

Collator Klasse

Definition

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

[Android.Runtime.Register("android/icu/text/Collator", ApiSince=24, DoNotGenerateAcw=true)]
public abstract class Collator : Java.Lang.Object, Android.Icu.Util.IFreezable, IDisposable, Java.Util.IComparator
[<Android.Runtime.Register("android/icu/text/Collator", ApiSince=24, DoNotGenerateAcw=true)>]
type Collator = class
    inherit Object
    interface IFreezable
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IComparator
Vererbung
Abgeleitet
Attribute
Implementiert

Hinweise

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.  Methoden, Felder und andere für ICU spezifische Funktionen werden als "<strong>[icu]</strong>" bezeichnet.

Collator führt gebietsschemaabhängige Zeichenfolgenvergleiche durch. Eine konkrete Unterklasse, RuleBasedCollator, ermöglicht die Anpassung der Sortierreihenfolge durch die Verwendung von Regelsätzen.

Ein Collator ist threadsicher nur, wenn er fixiert ist. Siehe #isFrozen() und Freezable.

Im Anschluss an die Spezifikationen des Unicode Consortiums für den Unicode-Sortierungsalgorithmus (UCA) gibt es 5 verschiedene Festigkeitsstufen, die in Vergleichen verwendet werden:

ulliPRIMARY-Stärke: In der Regel wird dies verwendet, um Unterschiede zwischen Basiszeichen zu kennzeichnen (z. B. "a" < "b"). Es ist der stärkste Unterschied. Beispielsweise werden Wörterbücher nach Basiszeichen in verschiedene Abschnitte unterteilt. liSEKUNDÄRE Stärke: Akzente in den Zeichen werden als sekundäre Unterschiede betrachtet (z. B. "as" < "&agrave; s" < "at"). Andere Unterschiede zwischen Buchstaben können je nach Sprache auch als sekundäre Unterschiede betrachtet werden. Ein sekundärer Unterschied wird ignoriert, wenn an einer beliebigen Stelle in den Zeichenfolgen ein Primärunterschied vorhanden ist. liTERTIÄRE Stärke: Groß- und Kleinschreibungsunterschiede in Zeichen werden bei tertiärer Stärke unterschieden (z. B. "ao" < "Ao" < "a&ograve;"). Darüber hinaus unterscheidet sich eine Variante eines Buchstabens von der Basisform auf der tertiären Stärke (z. B. "A" und "(A)"). Ein weiteres Beispiel ist der Unterschied zwischen groß und klein Kana. Ein tertiärer Unterschied wird ignoriert, wenn an einer beliebigen Stelle in den Zeichenfolgen ein primärer oder sekundärer Unterschied vorhanden ist. liQUATERNARY Stärke: Wenn Interpunktion ignoriert wird (siehe " Interpunktionszeichen im Benutzerhandbuch ignorieren") bei PRIMARY bis TERTIÄR stärke kann eine zusätzliche Stärkestufe verwendet werden, um Wörter mit und ohne Interpunktion zu unterscheiden (z. B. "ab" < "a-b" < "aB"). Dieser Unterschied wird ignoriert, wenn ein PRIMÄR-, SEKUNDÄR- oder TERTIÄR-Unterschied vorhanden ist. Die QUATERNARY-Stärke sollte nur verwendet werden, wenn die Interpunktion ignoriert wird. <li>IDENTISCHe Stärke: Wenn alle anderen Stärken gleich sind, wird die IDENTISCHe Stärke als Tiebreaker verwendet. Die Unicode-Codepunktwerte der NFD-Form jeder Zeichenfolge werden verglichen, nur wenn es keinen Unterschied gibt. Beispielsweise werden hebräische Cantillationszeichen nur bei dieser Stärke unterschieden. Diese Stärke sollte sparsam verwendet werden, da nur Codepunktwertunterschiede zwischen zwei Zeichenfolgen ein extrem seltenes Vorkommen sind. Die Verwendung dieser Stärke verringert die Leistung sowohl für Vergleichs- als auch Sortierungsschlüssel-APIs erheblich. Diese Stärke erhöht auch die Größe des Sortierschlüssels. </ul>

Im Gegensatz zum JDK behandelt ICU4J's Collator nur 2 Analysemodi, den kanonischen Analysemodus und einen, der keine Zerlegung verwendet. Der Kompatibilitätskompositionsmodus, java.text.Collator.FULL_DECOMPOSITION wird hier nicht unterstützt. Wenn der kanonische Analysemodus festgelegt ist, behandelt die Collator unnormalisierten Text ordnungsgemäß und erzeugt die gleichen Ergebnisse, als ob der Text in NFD normalisiert wurde. Wenn die kanonische Analyse deaktiviert ist, liegt es in der Verantwortung des Benutzers, sicherzustellen, dass sich der gesamte Text bereits in der entsprechenden Form befindet, bevor ein Vergleich ausgeführt wird oder bevor ein CollationKey angezeigt wird.

Weitere Informationen zum Sortierungsdienst finden Sie in der Benutzerhandbuch.

Beispiele für die Verwendung

// Get the Collator for US English and set its strength to PRIMARY
            Collator usCollator = Collator.getInstance(Locale.US);
            usCollator.setStrength(Collator.PRIMARY);
            if (usCollator.compare("abc", "ABC") == 0) {
                System.out.println("Strings are equivalent");
            }

            The following example shows how to compare two strings using the
            Collator for the default locale.

            // Compare two strings in the default locale
            Collator myCollator = Collator.getInstance();
            myCollator.setDecomposition(NO_DECOMPOSITION);
            if (myCollator.compare("&agrave;&#92;u0325", "a&#92;u0325&#768;") != 0) {
                System.out.println("&agrave;&#92;u0325 is not equals to a&#92;u0325&#768; without decomposition");
                myCollator.setDecomposition(CANONICAL_DECOMPOSITION);
                if (myCollator.compare("&agrave;&#92;u0325", "a&#92;u0325&#768;") != 0) {
                    System.out.println("Error: &agrave;&#92;u0325 should be equals to a&#92;u0325&#768; with decomposition");
                }
                else {
                    System.out.println("&agrave;&#92;u0325 is equals to a&#92;u0325&#768; with decomposition");
                }
            }
            else {
                System.out.println("Error: &agrave;&#92;u0325 should be not equals to a&#92;u0325&#768; without decomposition");
            }

Java Dokumentation für android.icu.text.Collator.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Name Beschreibung
Collator()

Leerer Standardkonstruktor, um Javadocs glücklich zu machen

Collator(IntPtr, JniHandleOwnership)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

Felder

Name Beschreibung
CanonicalDecomposition
Veraltet.

Wert für den Analysemodus.

FullDecomposition
Veraltet.

<strong>[icu] Hinweis:</strong> Dies dient nur der Abwärtskompatibilität mit Java APIs.

Identical
Veraltet.

Kleinster Festigkeitswert der Sortierer.

NoDecomposition
Veraltet.

Wert für den Analysemodus.

Primary
Veraltet.

Stärkster Sortierstärkewert.

Quaternary
Veraltet.

<strong>[icu]</strong> Fourth level collator strength value.

Secondary
Veraltet.

Festigkeitswert der zweiten Ebene.

Tertiary
Veraltet.

Festigkeitswert der dritten Ebene.

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Decomposition

Gibt den Analysemodus dieses Collator zurück. -or- Legt den Analysemodus dieses Collator fest.

Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
Instance

Gibt den Collator für das aktuelle Standardgebietsschema zurück.

IsFrozen

Bestimmt, ob das Objekt fixiert wurde oder nicht.

JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
JniPeerMembers

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

MaxVariable

<strong>[icu]</strong> Gibt die maximale Neuanordnungsgruppe zurück, deren Zeichen vom alternativen Behandlungsverhalten betroffen sind.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
Strength

Gibt das Stärkeattribut dieses Collator zurück. -or- Legt das Stärkeattribut dieses Collator fest.

TailoredSet

<strong>[icu]</strong> Gibt ein UnicodeSet zurück, das alle Zeichen und Sequenzen enthält, die in diesem Sortator zugeschnitten sind.

ThresholdClass

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

ThresholdType

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

UCAVersion

[icu] Gibt die UCA-Version dieses Collator-Objekts zurück.

VariableTop

[icu] Ruft den Variablenanfangswert eines Collator ab.

Version

[icu] Gibt die Version dieses Collatorobjekts zurück.

Methoden

Name Beschreibung
Clone()

Klont den Sortierer.

CloneAsThawed()

Stellt den Klonvorgang bereit.

Compare(Object, Object)

Vergleicht das Quellobjekt mit dem Zielobjekt.

Compare(String, String)

Vergleicht den Quelltext string mit der Zieltextzeichenfolge gemäß den Regeln, Stärke und Analysemodus dieses Collators.

Construct(JniObjectReference, JniObjectReferenceOptions)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
DisposeUnlessReferenced()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
Equals(Object)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
Equals(String, String)

Vergleicht die Gleichheit von zwei Textzeichenfolgen mit den Regeln, Stärke und Analysemodus dieses Collator.

Freeze()

Fixiert den Sortierer.

GetAvailableLocales()

Gibt den Satz von Gebietsschemas als Gebietsschemaobjekte zurück, für die Sortierer installiert sind.

GetAvailableULocales()

<strong>[icu]</strong> Gibt den Satz von Gebietsschemas als ULocale-Objekte zurück, für die Sortierer installiert sind.

GetCollationKey(String)

Transformiert die Zeichenfolge in einen CollationKey, der für einen effizienten wiederholten Vergleich geeignet ist.

GetDisplayName(Locale, Locale)

<strong>[icu]</strong> Gibt den Namen der Sortierer für objectLocale zurück, lokalisiert für displayLocale.

GetDisplayName(Locale)

<strong>[icu]</strong> Gibt den Namen der Sortierer für objectLocale zurück, lokalisiert für das Standardgebietsschema DISPLAY .

GetDisplayName(ULocale, ULocale)

<strong>[icu]</strong> Gibt den Namen der Sortierer für objectLocale zurück, lokalisiert für displayLocale.

GetDisplayName(ULocale)

<strong>[icu]</strong> Gibt den Namen der Sortierer für objectLocale zurück, lokalisiert für das Standardgebietsschema DISPLAY .

GetEquivalentReorderCodes(Int32)

Ruft alle Neuanordnungscodes ab, die mit dem angegebenen Neuanordnungscode gruppiert sind.

GetFunctionalEquivalent(String, ULocale, Boolean[])

<strong>[icu]</strong> Gibt das funktionell gleichwertige Gebietsschema für das angegebene angeforderte Gebietsschema im Hinblick auf das angegebene Schlüsselwort für den Sortierdienst zurück.

GetFunctionalEquivalent(String, ULocale)

<strong>[icu]</strong> Gibt das funktionell gleichwertige Gebietsschema für das angegebene angeforderte Gebietsschema im Hinblick auf das angegebene Schlüsselwort für den Sortierdienst zurück.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetInstance(Locale)

Gibt den Collator für das gewünschte Gebietsschema zurück.

GetInstance(ULocale)

<strong>[icu]</strong> Gibt den Collator für das gewünschte Gebietsschema zurück.

GetKeywords()

<strong>[icu]</strong> Gibt ein Array aller möglichen Schlüsselwörter zurück, die für die Sortierung relevant sind.

GetKeywordValues(String)

<strong>[icu]</strong> Gibt bei einem Schlüsselwort ein Array aller Werte für dieses Schlüsselwort zurück, das derzeit verwendet wird.

GetKeywordValuesForLocale(String, ULocale, Boolean)

<strong>[icu]</strong> Gibt bei einem Schlüssel und einem Gebietsschema ein Array von Zeichenfolgenwerten in einer bevorzugten Reihenfolge zurück, die einen Unterschied machen würde.

GetReorderCodes()

Ruft die Neuanordnungscodes für diese Sortierer ab.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetMaxVariable(Int32)

<strong>[icu]</strong> Legt die Variable oben auf den Anfang der angegebenen Neuanordnungsgruppe fest.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
SetReorderCodes(Int32[])

Legt die Neuanordnungscodes für diese Sortierer fest.

ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IComparator.Compare(Object, Object)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

IFreezable.CloneAsThawed()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

IFreezable.Freeze()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

IJavaPeerable.Disposed()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

(Geerbt von JavaObject)
IJavaPeerable.UnregisterFromRuntime()

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

<strong>[icu enhancement]</strong> ICU Ersetzung für java.text.Collator.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: