• 直接上代码,都是很简单的进制转换算法 final class Conversion { // MARK: - 十进制转二进制 class func decTobin(number:Int) -> String { var num = number var str = "" while num > 0 {...

    直接上代码,都是很简单的进制转换算法

     

    final class Conversion {
        
        // MARK: - 十进制转二进制
        class func decTobin(number:Int) -> String {
            var num = number
            var str = ""
            while num > 0 {
                str = "\(num % 2)" + str
                num /= 2
            }
            return str
        }
        
        // MARK: - 二进制转十进制
        class func binTodec(number num: String) -> Int {
            var sum: Int = 0
            for c in num.characters {
                let str = String(c)
                sum = sum * 2 + Int(str)!
            }
            return sum
        }
        
        // MARK: - 十进制转十六进制
        class func decTohex(number:Int) -> String {
            return String(format: "%0X", number)
        }
        
        // MARK: - 十六进制转十进制
        class func hexTodec(number num:String) -> Int {
            let str = num.uppercased()
            var sum = 0
            for i in str.utf8 {
                sum = sum * 16 + Int(i) - 48 // 0-9 从48开始
                if i >= 65 {                 // A-Z 从65开始,但有初始值10,所以应该是减去55
                    sum -= 7
                }
            }
            return sum
        }
    }

     

     

     

    其实系统自带了进制转换的算法

     

    print(Conversion.decTobin(number: 4))
    print(Conversion.binTodec(number: "100"))
    print(Conversion.decTohex(number: 16))
    print(Conversion.hexTodec(number: "10"))
    //系统自带
    print(String(16, radix: 16))
    print(String(16, radix: 8))
    print(String(16, radix: 2))
    print(String(16, radix: 10))

     

     

     

     

     

     

     

    展开全文
  • 这里所说的转换,并不是Swift中字面量之间的转换。如果是字面量之间的转换,ios系统中已经自动帮我们转换了。 例如let number1:Int = 8let number2:Int = 0b1000let number3:Int = 0x8这三个常量都是同一个值...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • swift16进制转换成UIColor 2017-08-02 23:04:02
    swift 中利用UIColor扩展创建16进制转UIColor类如下: 代码如下:extension UIColor { class func hexStringToColor(hexString: String) -> UIColor{ var cString: String = hexString.trimmingCharacters(in: ...
  • swift 打印16进制 2015-08-21 15:23:25
    println(String(format: "%x", b));
  • ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)➤GitHub地址:...
  • Swift UIColor 16进制编码转换RGB : 由于UI出图的时候,通常给的是16进制的编码颜色,我们在开发的时候需要将它转换为RGB格式,现在给出两种代码片段.   一、对UIColor进行扩展 1 extension UIColor { 2 3 /...
  • Swift 负数转二进制 2017-09-17 10:21:51
    今天无意中看到Swift负数转二进制好玩的点。 十进制-1转为8位二进制: 一般情况下:十进制-1 转为 二进制 11111110 Swift:十进制-1 转为 二进制 11111111 哈哈哈,我弄了半天才发现Swift的溢出机制,原来最大...
  • //给UIColor扩展extension UIColor { /// 用十六进制颜色创建UIColor /// /// - Parameter hexColor: 十六进制颜色 (0F0F0F) convenience init(hexColor: String) { // 存储转换后的数值 var red:UInt32 = 0, ...
  • 今天用swfit写项目的时候遇到了转换的问题,贴出来,给需要的人
  • swift—UIColor十六进制 2019-03-17 15:12:57
    2.代码 import Foundation import UIKit extension UIColor{ class func colorWithHex(hexStr:String) -> UIColor{ return UIColor.colorWithHex(hexStr: hexStr, alpha: 1) } } exten...
  • Swift [UInt8]转16进制字符串 2019-08-08 15:47:51
    使用String的format方法,把UInt8转成hex,使用02表示2位,不足补0。 extension Array where Element == UInt8 { var hexString: String { return self.compactMap { String(format: "%02x", $0).uppercased() } ...
  • swift 字符串String转Int 16进制字符串String转Int var hexi:UInt = UInt(hexS, radix: 16) let n = 14 var st = String(format:"%02X", n) st += " is the hexadecimal representation of \(n)" print(st...
  • 1,十进制的字符串转成数字 Swift中,如果要把字符串转换成数字类型(比如整型,浮点型等)。可以先转成NSString类型,让后再转。 1 2 3 4 //将文本框中的值转换成数字 var i = (tf1.text as NSString).int...
  • Swift 解析16进制颜色 2018-03-19 15:09:07
    Swift 版 解析16进制颜色 extension UIColor { public convenience init(hex: String) { var red: CGFloat = 0.0 var green: CGFloat = 0.0 var blue: CGFloat = 0.0 var alp...
  • swift 16进制颜色转换 2017-08-08 11:57:01
    调用 extension UIColor { //用数值初始化颜色,便于生成设计图上标明的十六进制颜色 convenience init(valueRGB: UInt, alpha: CGFloat) { self.init( red: CGFloat((valueRGB & 0xFF0000) >> 16) / 2
  • Swift 进制转换问题 2019-10-06 15:10:31
    swift进制转换方法。 适当修改后,可以与oc混编在oc项目中使用。 extension Int { // 10进制2进制 var toBinary: String { return String(self, radix: 2, uppercase: true) } // 10进制转16进制 ...
  • UIColor和16进制互转,UIColor转RGBA
  • Swift - 二进制,八进制,十六机制的表示方法 Swift - 二进制,八进制,十六机制的表示方法 2015-01-23 14:47 发布:yuhang 浏览:181 整数各种进制的字面量如下: 十进制数,没有前缀 二进制数,前缀是...
1 2 3 4 5 ... 20
收藏数 7,861
精华内容 3,144