日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Swift之String的简单实用

發(fā)布時間:2025/3/15 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Swift之String的简单实用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在 Swift 中絕大多數(shù)的情況下,推薦使用?String?類型

  • String 是一個結(jié)構(gòu)體,性能更高
    • String 目前具有了絕大多數(shù) NSString 的功能
    • String 支持直接遍歷
  • NSString 是一個 OC 對象,性能略差
  • Swift 提供了?String?和?NSString?之間的無縫轉(zhuǎn)換

字符串演練

  • 遍歷字符串中的字符
for s in str.characters {print(s) }
  • 字符串長度
// 返回以字節(jié)為單位的字符串長度,一個中文占 3 個字節(jié) let len1 = str.lengthOfBytesUsingEncoding(NSUTF8StringEncoding) // 返回實際字符的個數(shù) let len2 = str.characters.count // 返回 utf8 編碼長度 let len3 = str.utf8.count
  • 字符串拼接
    • 直接在 "" 中使用?\(變量名)?的方式可以快速拼接字符串
let str1 = "Hello" let str2 = "World" let i = 32 str = "\(i) 個 " + str1 + " " + str2

我和我的小伙伴再也不要考慮?stringWithFormat?了 :D

  • 可選項的拼接
    • 如果變量是可選項,拼接的結(jié)果中會有?Optional
    • 為了應(yīng)對強行解包存在的風險,蘋果提供了????操作符
    • ???操作符用于檢測可選項是否為?nil
      • 如果不是?nil,使用當前值
      • 如果是?nil,使用后面的值替代
let str1 = "Hello" let str2 = "World" let i: Int? = 32 str = "\(i ?? 0) 個 " + str1 + " " + str2
  • 格式化字符串
    • 在實際開發(fā)中,如果需要指定字符串格式,可以使用?String(format:...)?的方式
let h = 8 let m = 23 let s = 9 let timeString = String(format: "%02d:%02d:%02d", arguments: [h, m, s]) let timeStr = String(format: "%02d:%02d:%02d", h, m, s)

String & Range 的結(jié)合

  • 在 Swift 中,String?和?Range連用時,語法結(jié)構(gòu)比較復(fù)雜
  • 如果不習(xí)慣 Swift 的語法,可以將字符串轉(zhuǎn)換成?NSString?再處理
let helloString = "我們一起飛" (helloString as NSString).substringWithRange(NSMakeRange(2, 3))
  • 使用 Range?的寫法
let startIndex = helloString.startIndex.advancedBy(0) let endIndex = helloString.endIndex.advancedBy(-1)helloString.substringWithRange(startIndex..<endIndex)

轉(zhuǎn)載于:https://www.cnblogs.com/skbyy/p/5882058.html

總結(jié)

以上是生活随笔為你收集整理的Swift之String的简单实用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。