📅  最后修改于: 2023-12-03 15:05:02.644000             🧑  作者: Mango
Int
类型有一个叫做 >>>
的方法,它接收一个 Long
类型的参数,并返回一个新的 Int
类型值。这个方法称为无符号右位移操作符,它将 Int
类型的值向右移动指定的位数,并用零填充左侧的空位。
def >>> (x: Long): Int
x: Long
- 移位的位数,必须是非负的值。Int
- 移位后的 Int
值。val a = 10
val b = -10
val c = 20
println(a >>> 2) // 2
println(b >>> 2) // 1073741821
println(c >>> 2) // 5
在上面的示例中,我们使用 >>>
方法将 a
, b
, c
变量的值向右移动两个位置,并打印结果。
a
的值是 10
,向右移动两个位置后,变成了 2
。
b
的值是 -10
,因为这是有符号类型,所以向右移动两个位置后,符号位被扩展成了 1
,其他位被填充成了 0
,变成了 1073741821
。
c
的值是 20
,向右移动两个位置后,变成了 5
。
注意,在使用无符号右位移操作符时,移位的位数必须是非负的值。如果移位的位数是负数,则会产生编译时错误。