谁能解释Java操作符<<;=?

谁能解释Java操作符<<;=?,java,Java,当查看Java HashMap的源代码时,我看到以下一些代码: 同时(容量>>= 这是一个轮班操作,然后分配,例如。 x =,>>>= 这是一个轮班操作,然后分配,例如。 x“左移等于”(“左移等于”)(你应该通过勾选最佳答案旁边的复选标记来接受答案。我假设这是基于你对Binyamin Sharet的回应。你应该通过勾选最佳答案旁边的复选标记来接受答案。我假设这是Binyamin Sharet基于你对他的回应。 a = a << b; while (capacity < in

当查看Java HashMap的源代码时,我看到以下一些代码:

同时(容量<初始容量)
容量这是一个左移分配,几乎与以下内容相同:

capacity = capacity << 1;

capacity=capacity这是一个左班分配,几乎与以下内容相同:

capacity = capacity << 1;

capacity=capacity这和
+=
的想法是一样的,它会移位和赋值


在您的示例中,
capacity
将分配给自身,左移1,直到达到
initialCapacity
。它在屏幕上。

这和
+=
一样,它移动和分配

在您的示例中,
capacity
将分配给自身,左移1,直到达到
initialCapacity
。它在。

a
a

=,>>>=

这是一个轮班操作,然后分配,例如。 x

=,>>>=

这是一个轮班操作,然后分配,例如。
x“左移等于”(“左移等于”)(你应该通过勾选最佳答案旁边的复选标记来接受答案。我假设这是基于你对Binyamin Sharet的回应。你应该通过勾选最佳答案旁边的复选标记来接受答案。我假设这是Binyamin Sharet基于你对他的回应。
a = a << b;
while (capacity < initialCapacity) { capacity <<= 1; }

while (capacity < initialCapacity) { capacity = capacity * 2; }

while (capacity < initialCapacity) { capacity *= 2; }