언어

Collator 클래스

정의

<strong>[icu enhancement]</strong> ICU's replacement for 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
상속
파생
특성
구현

설명

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.  ICU와 관련된 메서드, 필드 및 기타 기능에는 '<strong>[icu]</strong>'이라는 레이블이 지정됩니다.

Collator는 로캘 구분 문자열 비교를 수행합니다. 구체적인 하위 클래스인 RuleBasedCollator를 사용하면 규칙 집합을 사용하여 데이터 정렬 순서를 사용자 지정할 수 있습니다.

데이터 정렬기는 고정된 경우에만 스레드로부터 안전합니다. #isFrozen()Freezable참조하세요.

유니코드 컨소시엄UCA(유니코드 데이터 정렬 알고리즘) 사양에 따라 비교에 사용되는 5가지 수준의 강도가 있습니다.

ulliPRIMARY 강도: 일반적으로 기본 문자 간의 차이를 나타내는 데 사용됩니다(예: "a" < "b"). 그것은 가장 강한 차이입니다. 예를 들어 사전은 기본 문자별로 서로 다른 섹션으로 나뉩니다. liSECONDARY 강도: 문자의 악센트는 보조 차이로 간주됩니다(예: "as" < "&agrave; s" < "at"). 문자 간의 다른 차이점은 언어에 따라 보조 차이점으로 간주될 수도 있습니다. 문자열의 어느 곳에서나 주요 차이점이 있는 경우 보조 차이점은 무시됩니다. liTERTIARY 강도: 문자의 대문자와 소문자 차이는 3차 강도로 구분됩니다(예: "ao" < "Ao" < "a&ograve;"). 또한 문자의 변형은 세 번째 강도의 기본 형식(예: "A" 및 "(A)")과 다릅니다. 또 다른 예는 크고 작은 가나의 차이입니다. 문자열의 어느 곳에서나 기본 또는 보조 차이가 있는 경우 3차 차이는 무시됩니다. liQUATERNARY 강도: PRIMARY에서 3차 강도까지 문장 부호가 무시되면( 사용자 가이드의 문장 부호 무시 참조) 추가 강도 수준을 사용하여 문장 부호를 사용 또는 사용하지 않고 단어를 구분할 수 있습니다(예: "ab" < "a-b" < "aB"). 이 차이는 PRIMARY, SECONDARY 또는 TERTIARY 차이가 있을 때 무시됩니다. 문장 부호를 무시해야 하는 경우에만 QUATERNARY 강도를 사용해야 합니다. <li>IDENTICAL 강도: 다른 모든 강도가 같으면 동일한 강도가 타이브레이커로 사용됩니다. 차이가 없는 경우를 대비하여 각 문자열의 NFD 형식의 유니코드 코드 포인트 값을 비교합니다. 예를 들어 히브리어 캔틸레이션 표시는 이 강도에서만 구별됩니다. 두 문자열 간의 코드 포인트 값 차이만 극히 드물기 때문에 이 강도는 아쉽게 사용해야 합니다. 이 강도를 사용하면 비교 및 데이터 정렬 키 생성 API의 성능이 크게 저하됩니다. 이 강도는 데이터 정렬 키의 크기도 증가합니다. </ul>

JDK와 달리 ICU4J의 콜레이터는 분해 모드 2개, 정식 분해 모드 및 분해를 사용하지 않는 모드 1개만 처리합니다. java.text.Collator.FULL_DECOMPOSITION 호환성 분해 모드는 여기에서 지원되지 않습니다. 정식 분해 모드가 설정된 경우 Collator는 정규화되지 않은 텍스트를 제대로 처리하여 텍스트가 NFD에서 정규화된 것과 동일한 결과를 생성합니다. 정식 분해가 해제된 경우 비교를 수행하거나 CollationKey를 가져오기 전에 모든 텍스트가 이미 적절한 형식인지 확인하는 것은 사용자의 책임입니다.

데이터 정렬 서비스에 대한 자세한 내용은 사용자 가이드를 참조하세요.

사용 예

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

에 대한 android.icu.text.CollatorJava 설명서

이 페이지의 일부는 만들고 공유한 작업을 기반으로 하며 에 설명된 조건에 따라 사용됩니다.

생성자

속성 Description
Collator()

javadocs를 행복하게 만드는 빈 기본 생성자

Collator(IntPtr, JniHandleOwnership)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

필드

속성 Description
CanonicalDecomposition
사용되지 않음.

분해 모드 값입니다.

FullDecomposition
사용되지 않음.

<strong>[icu] 참고:</strong> 이 기능은 Java API와의 이전 버전과의 호환성을 위한 것입니다.

Identical
사용되지 않음.

가장 작은 데이터 정렬기 강도 값입니다.

NoDecomposition
사용되지 않음.

분해 모드 값입니다.

Primary
사용되지 않음.

가장 강력한 데이터 정렬기 강도 값입니다.

Quaternary
사용되지 않음.

<strong>[icu]</strong> Fourth 수준 데이터 정렬기 강도 값입니다.

Secondary
사용되지 않음.

두 번째 수준 데이터 정렬기 강도 값입니다.

Tertiary
사용되지 않음.

세 번째 수준 데이터 정렬기 강도 값입니다.

속성

속성 Description
Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Decomposition

이 Collator의 분해 모드를 반환합니다. -또는- 이 Collator의 분해 모드를 설정합니다.

Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
Instance

현재 기본 로캘에 대한 Collator를 반환합니다.

IsFrozen

개체가 고정되었는지 여부를 확인합니다.

JniIdentityHashCode

interop 런타임에 의해 이 Java 피어에 할당된 ID 해시 코드를 가져옵니다.

(다음에서 상속됨 Object)
JniManagedPeerState

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
JniPeerMembers

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

MaxVariable

<strong>[icu]</strong> 문자가 대체 처리 동작의 영향을 받는 최대 다시 정렬 그룹을 반환합니다.

PeerReference

이 Java 피어에 대한 JNI 개체 참조를 가져옵니다.

(다음에서 상속됨 Object)
Strength

이 Collator의 강도 특성을 반환합니다. -또는- 이 Collator의 강도 특성을 설정합니다.

TailoredSet

<strong>[icu]</strong> 이 데이터 정렬기에 맞게 조정된 모든 문자와 시퀀스를 포함하는 UnicodeSet을 반환합니다.

ThresholdClass

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

ThresholdType

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

UCAVersion

[icu] 이 데이터 정렬기 개체의 UCA 버전을 반환합니다.

VariableTop

[icu] Collator의 변수 최상위 값을 가져옵니다.

Version

[icu] 이 데이터 정렬기 개체의 버전을 반환합니다.

메서드

속성 Description
Clone()

데이터 정렬기를 복제합니다.

CloneAsThawed()

복제 작업을 제공합니다.

Compare(Object, Object)

원본 개체를 대상 개체와 비교합니다.

Compare(String, String)

이 데이터 정렬기의 규칙, 강도 및 분해 모드에 따라 원본 텍스트 문자열을 대상 텍스트 문자열과 비교합니다.

Construct(JniObjectReference, JniObjectReferenceOptions)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
Dispose()

이 Java 피어에서 보유한 리소스를 해제합니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

이 Java 피어에서 보유한 리소스를 해제합니다.

(다음에서 상속됨 Object)
DisposeUnlessReferenced()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
Equals(Object)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
Equals(String, String)

이 데이터 정렬기의 규칙, 강도 및 분해 모드를 사용하여 두 텍스트 문자열의 같음을 비교합니다.

Freeze()

데이터 정렬기를 고정합니다.

GetAvailableLocales()

로캘 집합을 로캘 개체로 반환하며, 이 개체는 데이터 정렬기가 설치되어 있습니다.

GetAvailableULocales()

<strong>[icu]</strong> 데이터 정렬기가 설치된 ULocale 개체로 로캘 집합을 반환합니다.

GetCollationKey(String)

문자열을 효율적인 반복 비교에 적합한 CollationKey로 변환합니다.

GetDisplayName(Locale, Locale)

<strong>[icu]</strong> displayLocale에 대해 지역화된 objectLocale에 대한 데이터 정렬기의 이름을 반환합니다.

GetDisplayName(Locale)

<strong>[icu]</strong> 기본 DISPLAY 로캘에 대해 지역화된 objectLocale에 대한 데이터 정렬기의 이름을 반환합니다.

GetDisplayName(ULocale, ULocale)

<strong>[icu]</strong> displayLocale에 대해 지역화된 objectLocale에 대한 데이터 정렬기의 이름을 반환합니다.

GetDisplayName(ULocale)

<strong>[icu]</strong> 기본 DISPLAY 로캘에 대해 지역화된 objectLocale에 대한 데이터 정렬기의 이름을 반환합니다.

GetEquivalentReorderCodes(Int32)

지정된 다시 정렬 코드로 그룹화된 모든 다시 정렬 코드를 검색합니다.

GetFunctionalEquivalent(String, ULocale, Boolean[])

<strong>[icu]</strong> 데이터 정렬 서비스에 대해 지정된 키워드와 관련하여 지정된 요청된 로캘에 대해 기능적으로 동등한 로캘을 반환합니다.

GetFunctionalEquivalent(String, ULocale)

<strong>[icu]</strong> 데이터 정렬 서비스에 대해 지정된 키워드와 관련하여 지정된 요청된 로캘에 대해 기능적으로 동등한 로캘을 반환합니다.

GetHashCode()

개체에 대한 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
GetInstance(Locale)

원하는 로캘의 Collator를 반환합니다.

GetInstance(ULocale)

<strong>[icu]</strong> 원하는 로캘에 대한 데이터 정렬기를 반환합니다.

GetKeywords()

<strong>[icu]</strong> 데이터 정렬과 관련된 가능한 모든 키워드의 배열을 반환합니다.

GetKeywordValues(String)

<strong>[icu]</strong> 지정된 키워드는 현재 사용 중인 해당 키워드에 대한 모든 값의 배열을 반환합니다.

GetKeywordValuesForLocale(String, ULocale, Boolean)

<strong>[icu]</strong> 키와 로캘을 지정하면 문자열 값 배열을 기본 순서로 반환하여 차이를 만듭니다.

GetReorderCodes()

이 데이터 정렬기의 다시 정렬 코드를 검색합니다.

JavaFinalize()
사용되지 않음.

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
SetMaxVariable(Int32)

<strong>[icu]</strong> 변수를 지정된 순서 다시 정렬 그룹의 맨 위로 설정합니다.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
SetReorderCodes(Int32[])

이 데이터 정렬기의 다시 정렬 코드를 설정합니다.

ToArray<T>()

이 Java 배열 래퍼에서 관리되는 배열을 만듭니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterFromRuntime()

interop 런타임에서 이 Java 피어의 등록을 취소합니다.

(다음에서 상속됨 Object)
Wait()

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받><거나 ><>중단/종료<합니다.>

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 >중단/<종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 >중단/<종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

속성 Description
IComparator.Compare(Object, Object)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

IFreezable.CloneAsThawed()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

IFreezable.Freeze()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

IJavaPeerable.Disposed()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.Finalized()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

(다음에서 상속됨 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

확장명 메서드

속성 Description
GetJniTypeName(IJavaPeerable)

인스턴스 self형식의 JNI 이름을 가져옵니다.

JavaAs<TResult>(IJavaPeerable)

형식self을 강제 TResult 변환하여 강제 변환이 Java 쪽에서 유효한지 확인합니다.

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

<strong>[icu enhancement]</strong> ICU's replacement for java.text.Collator.

TryJavaCast<TResult>(IJavaPeerable, TResult)

형식self을 강제 TResult 변환하여 강제 변환이 Java 쪽에서 유효한지 확인합니다.

적용 대상