64 lines
1.7 KiB
Plaintext
64 lines
1.7 KiB
Plaintext
// 位运算符示例
|
|
let a = 5 // 二进制: 0101
|
|
let b = 3 // 二进制: 0011
|
|
|
|
// 按位与运算
|
|
let and_result = a & b // 结果: 1 (0001)
|
|
|
|
// 按位或运算
|
|
let or_result = a | b // 结果: 7 (0111)
|
|
|
|
// 按位异或运算
|
|
let xor_result = a ^ b // 结果: 6 (0110)
|
|
|
|
// 按位取反运算
|
|
let not_result = ~a // 结果: -6
|
|
|
|
// 左移运算
|
|
let shl_result = a << 1 // 结果: 10 (1010)
|
|
|
|
// 右移运算
|
|
let shr_result = a >> 1 // 结果: 2 (0010)
|
|
|
|
// 自增自减运算符
|
|
let i = 0
|
|
i++ // i = 1
|
|
i-- // i = 0
|
|
++i // i = 1
|
|
--i // i = 0
|
|
|
|
// 复合赋值运算符
|
|
let x = 10
|
|
x += 5 // x = 15
|
|
x -= 3 // x = 12
|
|
x *= 2 // x = 24
|
|
x /= 4 // x = 6
|
|
x %= 4 // x = 2
|
|
|
|
// 位运算复合赋值运算符
|
|
let y = 12 // 二进制: 1100
|
|
y &= 10 // y = 8 (1000)
|
|
y |= 5 // y = 13 (1101)
|
|
y ^= 9 // y = 4 (0100)
|
|
y <<= 2 // y = 16 (10000)
|
|
y >>= 1 // y = 8 (1000)
|
|
|
|
// 三元表达式示例
|
|
let age = 20
|
|
let canVote = age >= 18 ? "可以投票" : "不能投票"
|
|
|
|
let score = 85
|
|
let result = score >= 90 ? "优秀" : (score >= 60 ? "及格" : "不及格")
|
|
|
|
// 打印结果
|
|
print("按位与结果: " + and_result)
|
|
print("按位或结果: " + or_result)
|
|
print("按位异或结果: " + xor_result)
|
|
print("按位取反结果: " + not_result)
|
|
print("左移结果: " + shl_result)
|
|
print("右移结果: " + shr_result)
|
|
print("最终i的值: " + i)
|
|
print("最终x的值: " + x)
|
|
print("位运算复合赋值后y的值: " + y)
|
|
print("投票权: " + canVote)
|
|
print("考试结果: " + result) |