Swift 2進数出力のゼロサプレス
課題
print("\(String(30, radix: 2))")
出力:11110
print("\(String(6, radix: 2))")
出力:110
桁が合わない。
調査
String Format Specifiersに2進数はない。
対応
Stringにextensionを作成する。
extension String { func zerosuppression(digit: Int) -> String { String(repeating: "0", count: digit - self.count) + self } }
print("\(String(6, radix: 2)).zerosuppression(digit: 5)")
出力:00110