• 直接上代码,都是很简单的进制转换算法 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 ...//十进制转进制,返回的是字符串格...
  • 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 进制转换问题 2019-10-06 15:10:31
    swift进制转换方法。 适当修改后,可以与oc混编在oc项目中使用。... // 10进制转2进制 var toBinary: String { return String(self, radix: 2, uppercase: true) } // 10进制转16进制 var toH...
  • ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)➤GitHub地址:...
  • Number.prototype.changeTo36=function(){ //进制映射 var arr36=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W"...
  • 10进制转36进制 2012-09-12 16:36:30
    public static string C10_36(long i) { string s = ""; int j = 0; while (i > 36) { j = i % 36; if (j < 10) ...
  • OC 十进制进制 转换 2020-05-29 10:33:51
    // 十进制转进制 + (NSString *)toBinarySystemWithDecimalSystem:(NSString *)decimal{ int num = [decimal intValue]; int remainder = 0; //余数 int divisor = 0; //除数 NSString * prepare = @""; ...
  • 一些面试的算法题 import java.util.HashMap; public class Ten2Thirty { private static final String X36 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"... private static final String[] ...0,1,2,3,4...
  • 今天用swfit写项目的时候遇到了转换的问题,贴出来,给需要的人
  • Swift UIColor 16进制编码转换RGB : 由于UI出图的时候,通常给的是16进制的编码颜色,我们在开发的时候需要将它转换为RGB格式,现在给出两种代码片段.   一、对UIColor进行扩展 1 extension UIColor { 2 3 /...
  • swift 字符串StringInt 16进制字符串StringInt 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 负数进制 2017-09-17 10:21:51
    今天无意中看到Swift负数进制好玩的点。 十进制-1转为8位二进制: 一般情况下:十进制-1 转为 二进制 11111110 Swift:十进制-1 转为 二进制 11111111 哈哈哈,我弄了半天才发现Swift的溢出机制,原来最大...
  • swift 16进制颜色转换 2017-08-08 11:57:01
    调用 extension UIColor { //用数值初始化颜色,便于生成设计图上标明的十六进制颜色 convenience init(valueRGB: UInt, alpha: CGFloat) { self.init( red: CGFloat((valueRGB & 0xFF0000) >> 16) / 2
  • //给UIColor扩展extension UIColor { /// 用十六进制颜色创建UIColor /// /// - Parameter hexColor: 十六进制颜色 (0F0F0F) convenience init(hexColor: String) { // 存储转换后的数值 var red:UInt32 = 0, ...
  • 把一串16进制数-[UInt8],例如 01 10 CD 成字符串-String "0110CD",代码如下: func bytesToStr(bytes:[UInt8]) -> String { var hexStr = "" for index in 0 ..< bytes.count { var Str = bytes...
  • 下面罗列了二进制、十进制、十六进制之间相互转换的方法,有时候可能会用的到,需要的朋友可以收藏一下。 十进制转换为二进制 /** 十进制转换为二进制 @param decimal 十进制数 @return 二进制数 */ + ...
1 2 3 4 5 ... 20
收藏数 7,856
精华内容 3,142