<< =运算符在Java中意味着什么?

Gee*_*eek 5 java bit-manipulation hashmap bit

你能否从HashMap构造函数中专门 解释这段代码片段

容量<< = 1:

// Find a power of 2 >= initialCapacity
198         int capacity = 1;
199         while (capacity < initialCapacity)
200             capacity <<= 1;
Run Code Online (Sandbox Code Playgroud)

ass*_*ias 11

它相当于capacity = capacity << 1;.
该操作将容量位向左移一位,相当于乘以2.

您发布的特定代码找到的最小幂2大于initialCapacity.

因此,如果initialCapacity是27,例如,capacity循环后将是32(2 ^ 5).