文档

Java™ 教程
隐藏目录
比较字符串
路径:国际化
课程:处理文本

比较字符串

对于需要对文本进行排序的应用程序,会频繁进行字符串比较。例如,报表生成器在对字符串列表按字母顺序排序时进行字符串比较。

如果应用程序的受众仅限于使用英语的人群,您可以使用String.compareTo方法进行字符串比较。String.compareTo方法对两个字符串内的Unicode字符进行二进制比较。然而,对于大多数语言,不能依赖这种二进制比较来对字符串进行排序,因为Unicode值不对应字符的相对顺序。

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

执行与区域设置无关的比较

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

自定义排序规则

在某些情况下,Collator类提供的预定义排序规则可能不适用于您。例如,您可能希望对不受Collator支持的语言的字符串进行排序。在这种情况下,您可以定义自己的排序规则,并将其分配给RuleBasedCollator对象。

提高排序性能

通过使用CollationKey类,您可以提高字符串比较的效率。该类将String对象转换为遵循给定Collator规则的排序键。


上一页:检查字符属性
下一页:执行与区域设置无关的比较