Collator 类

定义

Collator 类执行区域设置敏感 String 比较。

[Android.Runtime.Register("java/text/Collator", DoNotGenerateAcw=true)]
public abstract class Collator : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.ICloneable, Java.Util.IComparator
[<Android.Runtime.Register("java/text/Collator", DoNotGenerateAcw=true)>]
type Collator = class
    inherit Object
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IComparator
继承
Collator
派生
属性
实现

注解

Collator 类执行区域设置敏感 String 比较。 使用此类生成自然语言文本的搜索和排序例程。

Collator 是抽象基类。 子类实现特定的排序规则策略。 一个子类RuleBasedCollator目前随Java平台一起提供,适用于一组广泛的语言。 可以创建其他子类来处理更专业化的需求。

与其他区分区域设置的类一样,可以使用静态工厂方法 getInstance获取给定区域设置的相应 Collator 对象。 仅当需要了解特定排序规则的详细信息或需要修改该策略时,才需要查看子类 Collator

以下示例演示如何使用 Collator 默认区域设置比较两个字符串。 <blockquote>

{@code
            // Compare two strings in the default locale
            Collator myCollator = Collator.getInstance();
            if( myCollator.compare("abc", "ABC") < 0 )
                System.out.println("abc is less than ABC");
            else
                System.out.println("abc is greater than or equal to ABC");
            }

</blockquote>

可以设置 Collator's em <>strength</em> 属性,以确定在比较中被视为显著的差异级别。 提供了四个优势: PRIMARYSECONDARYTERTIARYIDENTICAL。 语言特征的确切强度分配取决于区域设置。 例如,在捷克,“e”和“f”被视为主要差异,而“e”和“ě”是次要差异,“e”和“E”是三级差异,“e”和“e”是相同的。 下面显示了美国英语如何忽略大小写和口音。 <blockquote>

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

</blockquote>

为了准确比较 String一次,该方法 compare 可提供最佳性能。 但是,对列表String进行排序时,通常需要多次比较。String 在这种情况下, CollationKey可提供更好的性能。 该 CollationKey 类将一个 String 转换为一系列位,可以按位与其他 CollationKey位进行比较。 A CollationKeyCollator 给定 String对象创建。 <br><strong Note:</strong>>CollationKeys from different Collators can compared. 有关使用 CollationKeys 的示例,请参阅类说明CollationKey

在 1.1 中添加。

Java文档java.text.Collator

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

构造函数

名称 说明
Collator()

默认构造函数。

Collator(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

字段

名称 说明
CanonicalDecomposition

分解模式值。

FullDecomposition

分解模式值。

Identical

排序器强度值。

NoDecomposition

分解模式值。

Primary

排序器强度值。

Secondary

排序器强度值。

Tertiary

排序器强度值。

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Decomposition

获取此排序器分解模式。 - 或 - 设置此排序器分解模式。

Handle

基础 Android 实例的句柄。

(继承自 Object)
Instance

获取当前默认区域设置的 Collator。

JniIdentityHashCode

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
JniPeerMembers

Collator 类执行区域设置敏感 String 比较。

PeerReference

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
Strength

返回此 Collator 的强度属性。 - 或 - 设置此 Collator 的强度属性。

ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

方法

名称 说明
Clone()

返回一个新的排序规则器,其分解模式和强度值与此排序器相同。

Compare(Object, Object)

比较其两个订单参数。

Compare(String, String)

根据此 Collator 的排序规则,将源字符串与目标字符串进行比较。

Dispose()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
Dispose(Boolean)

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
Equals(String, String)

基于此排序规则比较两个字符串相等的便利方法。

GetAvailableLocales()

返回此类方法可以返回本地化实例的所有区域设置 getInstance 的数组。

GetCollationKey(String)

将字符串转换为可以按位与其他 CollationKey 进行比较的一系列位。

GetHashCode()

生成此 Collator 的哈希代码。

GetInstance(Locale)

获取所需区域设置的 Collator。

JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ToArray<T>()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><>

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)

显式接口实现

名称 说明
IComparator.Compare(Object, Object)

Collator 类执行区域设置敏感 String 比较。

IJavaPeerable.Disposed()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.Finalized()

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Collator 类执行区域设置敏感 String 比较。

(继承自 Object)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

Collator 类执行区域设置敏感 String 比较。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于