为了账号安全,请及时绑定邮箱和手机立即绑定

Java String Pool实现的搜索算法是什么

Java String Pool实现的搜索算法是什么

哆啦的时光机 2022-03-10 10:53:04
Java中的字符串是不可变的。当我们使用字符串字面量(双引号)创建字符串时,它首先在字符串池中查找具有相同值的字符串。String first = "abc";我的问题是 JVM 搜索“abc”的搜索算法是什么?它只是循环整个字符串池值?
查看完整描述

1 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

它只是循环整个字符串池值?

不。

我的理解是字符串池是一种用本机代码实现的哈希表形式。

所以搜索算法是哈希表算法。在正常情况下,实习字符串是一种摊销O(1)操作。

(链接的问答包括一些指向 C++ 源代码的链接。)


查看完整回答
反对 回复 2022-03-10
  • 1 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信