Java有二进制或 |
和二进制和 &
运算符:
int a = 5 | 10;
int b = 5 & 10;
它们似乎不适用于Kotlin:
val a = 5 | 10;
val b = 5 & 10;
如何在Kotlin中使用Java的按位运算符?
答案 0 :(得分:19)
您为他们命名了函数。
直接来自Kotlin docs
从按位操作开始,它们没有特殊字符,只是可以用中缀形式调用的命名函数。
例如:
val x = (1 shl 2) and 0x000FF000
以下是按位运算的完整列表(仅适用于Int和Long):
shl(bits) – signed shift left (Java's <<)
shr(bits) – signed shift right (Java's >>)
ushr(bits) – unsigned shift right (Java's >>>)
and(bits) – bitwise and
or(bits) – bitwise or
xor(bits) – bitwise xor
inv() – bitwise inversion
答案 1 :(得分:3)
你可以在Kotlin中做到这一点
val a = 5 or 10;
val b = 5 and 10;
此处可以使用的操作列表
shl(bits) – signed shift left (Java's <<)
shr(bits) – signed shift right (Java's >>)
ushr(bits) – unsigned shift right (Java's >>>)
and(bits) – bitwise and
or(bits) – bitwise or
xor(bits) – bitwise xor
inv() – bitwise inversion