Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Comments

  1. When you use 1L shl 2, shl is considered as the left-shift operator instead of a method call.

  2. Bitwise operators are computed from left to the right.

  3. Bitwise operators have relatively low priority (lower than arithmatic operators), It is suggested that you use parentheses when you mix lower precendenc (bitwise opertors, ternary opertor, etc.) and high precendenc operators together. A even better approach in Kotlin is to avoid using bitwise operators and use the corresponding methods instead.

1L shl 2
4
1L shl 2 xor 4 
0
1L shl 2 xor 4 xor 8
8

Precedence of Bitwise operators

Bitwise operators are computed from the left to the right.

1L shl 2
4
1L shl 2 xor 4 
0
1L shl 2 xor 4 xor 8
8