java - 忽略大小写影响字符集

标签 java ignore-case

我创建了一个二叉搜索树,我想让它尽可能高效。添加节点时,我在将其与 String 进行比较时使用了 equalsIgnoreCase() (为了防止重复)。

添加两个节点时,例如:"BOB""bob"

例如:

“BOB”转换为ASCII = 066 079 066

"bob" 转换为 ASCII= 098 111 098

您可以看到 "BOB""bob" 由于大写字母而具有不同的值。

无论大小写如何,equalsIgnoreCase() 是否会将其作为一个条目接受?

这有助于提高效率吗?

最佳答案

这很可能会破坏你的二叉树。按字典顺序,“bob”和“BOB”之间有许多值(甚至是常见值)。例如:以小写“a”或大写字母“C”或以上开头的任何内容。如果它们中的任何一个在您的树中,那么“BOB”将在该节点处朝一个方向移动(“BOB”<“Dog”),而“bob”将朝另一个方向移动(“bob”>“Dog”)。这意味着您甚至没有机会比较“bob”和“BOB”。

您可以通过以下任一方式使其工作:

关于java - 忽略大小写影响字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47677753/

相关文章:

python,re.search/re.split 用于看起来像标题的短语,即以大写字母开头

java - Glassfish Derby 连接池,连接未返回到池中

java.lang.NoClassDefFoundError : In Rest API JAVA

java - 在 Eclipse 中调试时更改编译的代码

java - 使用 java 刷新 Excel 查询

UIMA Ruta 单词表大小写忽略

java - 匿名类方法访问

vb.net - IF 比较时忽略大小写

javacc本地忽略大小写?

python 根据内部元素和忽略大小写对列表列表进行排序