Java有binary-or|binary-and&运算符:

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

他们似乎不在Kotlin 工作:

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

How do I use Java's bitwise operators in Kotlin?

推荐答案

You have named functions for them.

直接从Kotlin docs

按位操作由可以中缀形式调用的函数表示.它们只能应用于IntLong.

例如:

val x = (1 shl 2) and 0x000FF000

以下是按位操作的完整列表:

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

Kotlin相关问答推荐

jlink:在合并模块和 kotlin.stdlib 中打包 kotlin.*

Kotlin - 协程未按预期执行

具有泛型类型的 Kotlin 密封接口不会为其子类型推断约束

测试协程和线程之间的差异,我在kotlin中使用线程时无法得到OOM错误

如何将glide显示的图像下载到设备存储中.Kotlin

Kotlin spring boot @RequestBody 验证未触发

Kotlin 中私有集的完整语法 struct 是什么?

Kotlin JS JSON 反序列化

Spring webflux bean验证不起作用

从列表中的每个对象中 Select 属性

在用Kotlin编写的Android库公共API中处理R8+JvmStatic Annotation+Lambda

如何在MVVM架构中观察RecyclerView适配器中的LiveData?

Kotlin默认使用哪种排序?

Kotlin suspend fun

如果 Maybe 完成,则从其他来源将 Maybe 转换为 Single

TypeConverter()在Android的TypeConverter错误中具有私有访问权限

我应该使用Kotlin数据类作为JPA实体吗?

kotlin中的全局可拓函数

将字符串转换为HashMap的最简单方法

递归方法调用在 kotlin 中导致 StackOverFlowError 但在 java 中没有