Swift學習 -- 字符串

一.字符串的介紹

  • 字符串的使用,在任何一門編程語言的開發中都是非常頻繁的。

二.與OC的區別

  • Swift中字符串是一個結構體,OC字符串是一個對象,性能比OC字符串要高。
  • Swift中字符串的類型是String,寫法"abc",而OC是NSString,寫法@"abc"。
  • Swift中的字符串支持直接遍歷。

三.用法

1.定義

格式:
let 標識符 = "值"

var 標識符 = ”值“
例子:

//OC
NSString * str = @“瘋狂的小托馬斯”;

//Swift
let str = "瘋狂的小托馬斯"
var str1 = "瘋狂的小托馬斯"

2.遍歷字符串

  • String 支持直接遍歷。
    例子:
var str = "瘋狂的小托馬斯"
for c in str.characters{
    print(c)
}

3.拼接字符串

  • 字符串之間的拼接
    直接用+進行拼接。
    例子:
let  s = "瘋狂"
let s1 = "的"
let s2 = "小托馬斯"
let resultStr = s + s1 + s2
print(resultStr)
//打印結果:瘋狂的小托馬斯 
var s3 = "最牛de "
s3 += resultStr
print(s3)
//打印結果:最牛de瘋狂的小托馬斯
  • 字符串與其他不同類型的標識符拼接
    格式 :
    /(標識符)
    例子:
let age = 22
let name = "瘋狂的小托馬斯"
var str3 = "name = \(name),age = \(age)"
print(str3)
//打印結果:name = 瘋狂的小托馬斯,age = 22

4.字符串的格式化

-使用的方法與OC類似,只是表現形式不同。
例子:

//OC
NSString * time = [NSString stringWithFormat:@"%02d:%20d:%02d",9,9,13];
//Swift
var time = String(format: "%02d : %02d : %02d", arguments: [9, 9, 13])
print(time)
//打印結果:09 : 09 : 13

5.字符串的截取

  • 字符串截取有2種方式。
    • OC對象方式截取
      將string轉換成NSString進行截取操作。
      例子:
 let s = "瘋狂的小托馬斯"
let h = (s as NSString).substringToIndex(2)
let m = (s as NSString).substringWithRange(NSMakeRange(2, 1))
let t = (s as NSString).substringFromIndex(3)
print(h)
print(m)
print(t)
/*打印結果:
瘋狂
的
小托馬斯
*/
  • string直接截取
let nameStr = "瘋狂的小托馬斯"
//創建Index
let indexS = nameStr.startIndex.advancedBy(2)
let indexEnd = nameStr.endIndex.advancedBy(-4)//endIndex注意要逆序,并且要負數
let range = Range<String.Index>(start: indexS, end: indexEnd)
//截取
let header = nameStr.substringToIndex(indexS)
let body = nameStr.substringWithRange(range)
let footer = nameStr.substringFromIndex(indexEnd)
print(header+body+footer)
//打印結果:瘋狂的小托馬斯
let index = nameStr.characters.indexOf("的") //根據字符查找index,最先遍歷那個字符
//index = 2

如果大家有什么疑惑,或者文章有什么錯誤的地方,請大家留言。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容