출처: 초보자를 위한 코틀린(Kotlin) 200제 / 엄민석 지음 | 정보문화사 | 2018년 05월 20일 출간
package com.practice007
// 비트 연산자
fun main(args: Array<String>): Unit
{
println(15 and 7) // 15와 7을 비트단위로 and 연산 , 15&7, 출력 7
println(5 or 2) // 5와 2를 비트단위 or 연산, 5|2, 출력 7
println(15 xor 5) // 15와 5를 비트단위 xor 연산, 15^5 ,출력 10
println(32767.inv()) // 32767를 비트단위로 반전, 출력 -32768
println(1 shl 3) // 1을 왼쪽으로 3칸 시프트, 1<<3 , 출력 8
println(8 shr 1) // 8을 오른쪽으로 1칸 시프트, 8>>1, 출력 1
println(-17 ushr 2) // 부호 유지하고, -17을 오른쪽 2칸 시프트, -17 >>>2 , 출력 1073741819
}
## 코틀린의 비트연산자는 기존의 익숙한 c/c++ 이나 java와 다르게 문자로 되있다.
ddshl - signed shift left (equivalent of << operator)
shr - signed shift right (equivalent of >> operator)
ushr- unsigned shift right (equivalent of >>> operator)
and - bitwise and (equivalent of & operator)
or - bitwise or (equivalent of | operator)
xor - bitwise xor (equivalent of ^ operator)
inv - bitwise complement (equivalent of ~ operator)
## 추가 샘플 코드
1 shl 2 // Equivalent to 1.shl(2), 출력 = 4
16 shr 2 // 출력 = 4
2 and 4 // 출력 = 0
2 or 3 // 출력 = 3
4 xor 5 // 출력 = 1
4.inv() // 출력 = -5