iOS 字符串進(jìn)制轉(zhuǎn)換匯總

一、字符串操作

1.截取字符串操作


      var s="這是取字符串例程"
      //取左邊的第二字后面的字
      var ns1=(s as NSString).substringFromIndex(2)
      //從左邊開始取5個(gè)文字
      var ns2=(s as NSString).substringToIndex(5)
      //左邊第五個(gè)字后到文字
      var ns3=(s as NSString).substringWithRange(NSMakeRange(5, 1))

2.字符串各類操作


        //-----------大寫轉(zhuǎn)換
        var  strA = "Hello"
        var  strB = strA.uppercaseString
        print (strB)
        //===========小寫轉(zhuǎn)換
        var strC = strA.lowercaseString //lowercaseString 字符串轉(zhuǎn)換小寫
        print(strC)
        
        //取絕對(duì)值
        abs(-10)
        fabs( -10.000)
        fabsf( -10.00)
        
        //按位取反
        let ini: UInt8 = 0b00001111
        let inv = ~ini
        String(inv,radix:2)
        //按位與
        let first: UInt8 = 0b11111100
        let last: UInt8  = 0b00111111
        let mid = first & last
        String(mid,radix:2)
        //按位或
        let someBits: UInt8 = 0b10110010
        let moreBits: UInt8 = 0b01011110
        let combinedbits = someBits | moreBits
        //按位異或
        let firstBits: UInt8 = 0b00010100
        let otherBits: UInt8 = 0b00000101
        let outputBits = firstBits ^ otherBits

二、進(jìn)制的轉(zhuǎn)換

1.十進(jìn)制 -> 十六進(jìn)制


func dec2hex(num:Int) -> String {
        return String(format: "%0X", num)
    }

2.十六進(jìn)制 -> 十進(jìn)制


func hex2dec(num:String) -> Int {
        let str = num.uppercaseString
        var sum = 0
        for i in str.utf8 {
            sum = sum * 16 + Int(i) - 48 // 0-9 從48開始
            if i >= 65 {                 // A-Z 從65開始,但有初始值10,所以應(yīng)該是減去55
                sum -= 7
            }
        }
        return sum
    }

3.十進(jìn)制 -> 二進(jìn)制


func dec2bit(var number:Int) -> String {
        var str = ""
        while number > 0 {
            // 累加二進(jìn)制的個(gè)位
            str = "\(number & 1)" + str
            // 向左移位去掉個(gè)位
            number = number >> 1
        }
        return str
    }
##4.二進(jìn)制 -> 十進(jìn)制
func bin2dec(var number:Int) -> Int {
        var sum = 0
        var bit = 1
        while number > 0 {
            sum = (number % 10) * bit + sum
            number /= 10
            bit *= 2
        }
        return sum
    }

5.十到十六進(jìn)制 到八 到二進(jìn)制

        let num = 10
        String(num,radix:2)
        String(num,radix:8)
        let l  = String(num,radix:16)
        hex2dec(l)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 網(wǎng)站亂碼問題我們會(huì)經(jīng)常碰到,大多見于非英文的中文字符或其他字符亂碼,而且,這類問題常常是因?yàn)榫幋a方式問題,主要原因...
    波段頂?shù)?/span>閱讀 3,334評(píng)論 1 9
  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結(jié)構(gòu)。通常情況下,聲明一個(gè)變量只保存一個(gè)值是遠(yuǎn)遠(yuǎn)不夠的,我們需要將一組...
    小黑y99閱讀 65,607評(píng)論 0 9
  • 今夜,仗著明天可以休息。于是,放肆地放任自己,聽歌。放肆地放任自己,不睡。何妨吟嘯且輕狂,可以自律,可以放松。...
    七七行記閱讀 321評(píng)論 0 0
  • 近段時(shí)間來,蘋果的日子并不好過,新發(fā)布的iPhone8系列在中國市場遇冷, 連最被寄予厚望的iPhone X現(xiàn)在也...
    妮莫_7e34閱讀 364評(píng)論 0 1
  • 姓名:覃杏留 公司:河池市南門時(shí)尚商貿(mào)有限公司 組別:258期利他二組 【日精進(jìn)打卡第00126天】 【知~學(xué)習(xí)】...
    隔世的風(fēng)閱讀 252評(píng)論 0 0

友情鏈接更多精彩內(nèi)容