找出与所给数最接近的2的指数的数,比如,3最接近的是4,5最接近的是8,9最接近的是16
public int get num(int a){
int n = a -1;
n |= n >>> 1;
n |= n >>> 2;
n |= n >>> 4;
n |= n >>> 8;
n |= n >>> 16;
return n+1;
}
来自jdk8,HashMap的tableSizeFor,当new HashMap(int capacity)指定容量时,会自动找最接近的2的指数作为初始容量