做位操作的时候就有用。位运算的运算规则你应该知道吧?
一般人都觉得 & | ~ 之类的比较不好理解,左右位移更明白一点。
如果用 001b 表示二进制的 1。那么
001b << 2
-> 100b
如果,a = 1, b = 2
a <<= b,之后 a 就变成 001b。
如果你不清楚相关的细节,就自己查查书,或者在网上搜一搜。
<<= 这个符号的意思和 += 之类的是类似的。
至于为什么要这么做就不清楚了。
就像如果出现
a += b 这样的式子,也只能知道是把 b 的值加到 a 身上,至于为什么要加,没有上下文是猜不出来的。