"11001001101000000100010101"
"00111000000011010000101011"
和
= 00001000000000000000000001
二进制表示。
"11001001101000000100010101" = > 0b11001001101000000100010101
"00111000000011010000101011" = > 0b00111000000011010000101011
两个字符串,但值看起来像二进制,我想Bitwise和运营商的两个二进制。
如何将字符串转换为二进制?
UInt和String都有init方法,在这里你可以给出数字的弧度(基数)。
let s1 = "11001001101000000100010101"
let s2 = "00111000000011010000101011"
if let binary1 = UInt(s1, radix: 2), let binary2 = UInt(s2, radix: 2) {
let res = binary1 & binary2
print(String(res, radix: 2))
}
产出
1000000000000000000001