Swift二进制,十进制,十六进制转换

前端之家收集整理的这篇文章主要介绍了Swift二进制,十进制,十六进制转换前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


// MARK:
    // MARK: 字符串转二进制 获取二进制的第几位数(字符串)
    /// 字符串转二进制 获取二进制的第几位数(字符串)
     func xnStringAndBinaryDigit(string: String,number: Int) -> String? {
        
        // 字符串转 int
        let valueForInt = (string as NSString).intValue;
        
        // 后面的参数为转换的进制数 2
        let result = String(valueForInt,radix:2);
        
        // 获取字符串内容长度
        var length = result.characters.count;
        
        // 第七位数是
        var seventiethNumber: String?;
        
        /// 遍历字符串中每个字符 我们需要的是右边数起 第七位数
        for i in result.characters {
            
            if length < number {
                
                break;
            }
            
            if length == number {
                
                seventiethNumber = String(i);
                
                break;
            }
            
            length -= 1;
        }
        
        return seventiethNumber;
    }
/*
         十进制Int 转 二进制String
         后面的参数为转换的进制数 2 10 16
         */
        let string = String(3,radix:2);
        
        // String 转 NSString
        let stringNS = NSString.init(string: string);
        
        // NSString 转 Int(十进制)
        let numberInt = stringNS.integerValue;

        // 十进制Int 转十六进制String
        let stringSixteen = String(30,radix:16)
        
        // 十六进制String 转 十进制Int
        let intNumber = stringSixteenChangeToInt(stringSixteen);
        
        print("\(numberInt),\(intNumber)");
// MARK:
    // MARK: 十六进制String 转 十进制Int
    /// 十六进制String 转 十进制Int
     func stringSixteenChangeToInt(stringSixteen:String) -> Int {
        
        let str = stringSixteen.uppercaseString
        
        var numbrInt = 0
        
        for i in str.utf8 {
            
            numbrInt = numbrInt * 16 + Int(i) - 48
            
            // 0-9 从48开始
            if i >= 65 {
                
                // A-Z 从65开始,但有初始值10,所以应该是减去55
                numbrInt -= 7
            }
        }
        return numbrInt
    }

学自:http://www.jianshu.com/p/34d5e958910a

原文链接:https://www.f2er.com/swift/323665.html

猜你在找的Swift相关文章