![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA源码巧妙设计
Sunager
这个作者很懒,什么都没留下…
展开
-
String#intern结果对比源码测试
/** *返回字符串对象的规范表示。 最初为空的字符串池由String类String 。 *当调用intern方法时,如果池已经包含与equals(Object)方法确定的相当于此String对象的字符串,则返回来自池的字符串。否则,此String对象将添加到池中,并返回对此String对象的引用。 *由此可见,对于任何两个字符串s和t , s.intern() == t.intern()是true当且仅当s.equals(t)是true 。 */// 如果池已经包含与equals(Object原创 2021-11-09 19:56:18 · 79 阅读 · 0 评论 -
Integer源码中为什么要使用52429?
以下为个人理解,若有错误请谅解!!!JAVA中整数除10的骚操作?源码:// java.lang.Integer#getChars// assert(i <= 65536, i);for (;;) { // 精彩之处:为什么是52429,为什么用>>>而不是>> q = (i * 52429) >>> (16+3); r = i - ((q << 3) + (q << 1)); // r = i原创 2021-10-24 20:23:28 · 309 阅读 · 0 评论