Comparing Strings

排序文本的应用程序执行频繁的字符串 比较。例如,当按字母 Sequences 对字符串 列表进行排序时,报表生成器将执行字符串 比较。

如果您的应用程序受众仅限于说英语的人,则可以使用String.compareTo方法执行字符串 比较。 String.compareTo方法对两个字符串 中的 Unicode 字符执行二进制比较。但是,对于大多数语言来说,不能依靠这种二进制比较来对字符串 进行排序,因为 Unicode 值不对应于字符的相对 Sequences。

幸运的是,Collator类允许您的应用程序对不同语言执行字符串 比较。在本节中,您将学习在对文本进行排序时如何使用Collator类。

执行与语言环境无关的比较

排序规则定义字符串 的排序 Sequences。这些规则因地区而异,因为各种自然语言对单词的排序方式不同。使用Collator类提供的 预定义归类规则,可以以与语言环境无关的方式对字符串 进行排序。

自定义归类规则

在某些情况下,Collator类提供的 预定义排序规则可能对您不起作用。例如,您可能想使用Collator不支持其语言环境的语言对字符串 进行排序。在这种情况下,您可以定义自己的整理规则,并将其分配给RuleBasedCollator对象。

提高整理性能

使用CollationKey类,可以提高字符串 比较的效率。此类将String个对象转换为符合给定Collator规则的排序键。