![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码优化
Alan-zzx
燕雀安知鸿鹄之志哉
展开
-
HashMap中计算散列位置时,用与运算代替取模运算的原理
在计算散列位置时 k = j - 1 & i ,理论上是将hash值对散列表长度 j (默认长度 16)取模,实际则转换成了与运算。抽象成计算式:X % 2n = X & (2n - 1)原创 2018-11-09 11:05:37 · 2828 阅读 · 1 评论 -
HashMap如何处理自定义大小为非2的幂次方:tableSizeFor(int i)
利用非负整数第一位二进制为 1 的特点,结合左移和或运算,将原数据低位转换成 1。原创 2018-11-13 12:06:50 · 431 阅读 · 0 评论 -
业务开发性能问题,循环中不使用+拼接字符串、不操作数据库
循环拼接字符串使用 StringBuilderpublic String fun2(String[] arr) { StringBuilder res = new StringBulider(); for(int i=0; i<10; i++) { res.append(arr[i]); } return res.toString();}...原创 2019-09-24 16:25:56 · 193 阅读 · 0 评论