Swift 打印二进制

关于 Swift 二进制、八进制、十六进制的表示方法不再赘述,参考苹果官方手册 The Swift Programming Language。苦于百度找不到打印方法,最后还是 StackOverFlow 拯救了我。

示例代码:

let initialBits: UInt8 = 0b00001111
let invertedBits = ~initialBits // 按位取反
let stringOfInvertedBits = String(invertedBits, radix: 2) // 转化为字符串
print(stringOfInvertedBits) // 输出结果为 11110000

let stringOfInvertedBits = String(invertedBits, radix: 2)

相当于

let stringOfInvertedBits = String(invertedBits, radix: 2, uppercase: false)

的省略。

函数定义:

extension String {
    /// Create an instance representing `v` in base 10.
    public init<T : _SignedIntegerType>(_ v: T)
    /// Create an instance representing `v` in base 10.
    public init<T : UnsignedIntegerType>(_ v: T)
    /// Create an instance representing `v` in the given `radix` (base).
    ///
    /// Numerals greater than 9 are represented as roman letters,
    /// starting with `a` if `uppercase` is `false` or `A` otherwise.
    public init<T : _SignedIntegerType>(_ v: T, radix: Int, uppercase: Bool = default)
    /// Create an instance representing `v` in the given `radix` (base).
    ///
    /// Numerals greater than 9 are represented as roman letters,
    /// starting with `a` if `uppercase` is `false` or `A` otherwise.
    public init<T : UnsignedIntegerType>(_ v: T, radix: Int, uppercase: Bool = default)
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,305评论 4 61
  • 28/12/2017 2:30 PM STID3024 SAD E INASIS MAS Sharmila bin...
    云会飘阅读 591评论 0 0
  • 用了近一天的时间,终于完成了! 终于发现 只要你想做到 很多事情可以达成心愿! 用这幅小画儿祝各位端午安康
    93a1386892e2阅读 333评论 0 5
  • 某时某刻在某个陌生的城市,乘着回家的某路公交或某趟地铁,默默的插上耳机,听着手机里循环播放了几年的歌,一个人默默的...
    苇草丶阅读 249评论 0 0