如何在Kotlin中使用Java的按位运算符?

时间:2018-01-27 09:45:31

标签: java kotlin bitwise-operators bitwise-and bitwise-or

Java有二进制或 |二进制和 &运算符:

int a = 5 | 10;
int b = 5 & 10;

它们似乎不适用于Kotlin:

val a = 5 | 10;
val b = 5 & 10;

如何在Kotlin中使用Java的按位运算符?

2 个答案:

答案 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