代码优化
Alan-zzx
燕雀安知鸿鹄之志哉
展开
-
HashMap中计算散列位置时,用与运算代替取模运算的原理
在计算散列位置时 k = j - 1 & i ,理论上是将hash值对散列表长度 j (默认长度 16)取模,实际则转换成了与运算。 抽象成计算式:X % 2n = X & (2n - 1)原创 2018-11-09 11:05:37 · 2834 阅读 · 1 评论 -
HashMap如何处理自定义大小为非2的幂次方:tableSizeFor(int i)
利用非负整数第一位二进制为 1 的特点,结合左移和或运算,将原数据低位转换成 1。原创 2018-11-13 12:06:50 · 442 阅读 · 0 评论 -
业务开发性能问题,循环中不使用+拼接字符串、不操作数据库
循环拼接字符串使用 StringBuilder public 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 · 200 阅读 · 0 评论