java

java

2023年2月26日
java
202302, java

num »>= 1 与 num »= 1 # num »>= 1 表示将 num 右移一位,并将结果赋值给 num。它使用的是“无符号右移位运算符”,即对于移出的最高位补0,因此它适用于处理无符号数,即大于或等于0的整数。 num »= 1 表示将 num 右移一位,并将结果赋值给 num。它使用的是“带符号右移位运算符”,即对于移出的最高位,用原来的符号位填充,因此它适用于处理带符号整数 假设 num 的初始值为 -8(二进制补码表示为 11111000),那么执行 num »>= 1 时,结果为 2147483644(二进制表示为 01111100),而执行 num »= 1 时,结果为 -4(二进制表示为 11111100)