Java 中的字符串比较
2022-08-31 12:27:59
“在字典上比较两个字符串”是什么意思?
“在字典上比较两个字符串”是什么意思?
从@Bozho和@aioobe的答案开始,词典比较类似于人们在字典中可能找到的顺序。
Java String 类提供了用于按字典顺序比较 String 的方法。它是这样使用的。.compareTo ()
"apple".compareTo ("banana")
此方法的返回值可以解释如下:int
compareTo
更具体地说,该方法在 ASCII 值中提供第一个非零差值。
因此,将返回值 (20)。由于这是一个正结果,因此参数 () 在字典上是第一位的。"computer".compareTo ("comparison")
(int) 'u' - (int) 'a'
"comparison"
例如,还有一个变体将返回。.compareToIgnoreCase ()
0
"a".compareToIgnoreCase ("A");
“比较”一词略有误导。您不是在比较严格的相等性,而是在比较哪个字符串在字典中排在第一位(词典)。
此功能允许字符串集合可排序。
请注意,这非常依赖于活动区域设置。例如,在丹麦,我们有一个字符“å”,它曾经被拼写为“aa”,与两个单a的非常不同(编辑:如果发音为“å”!)。因此,丹麦语排序规则将两个连续的 a 视为“å”,这意味着它遵循 z。这也意味着丹麦语词典的排序方式与英语或瑞典语词典不同。