web-dev-qa-db-ja.com

KotlinでJavaのビット演算子を使用するにはどうすればよいですか?

Javaにはbinary-or|およびbinary-and&演算子:

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

Kotlinでは動作しないようです:

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

KotlinでJavaのビット演算子を使用するにはどうすればよいですか?

19
Water Magical

それらの関数に名前を付けました。

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
24
Suresh Atta

あなたはコトリンでこれを行うことができます

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
6
Ali