国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Swift - 詳解Swift中的Characters字符類型與String字符串類型

詳解Swift中的Characters字符類型與String字符串類型

2020-12-26 17:07琿少 Swift

Swift中的字符串操作相當便捷,下面我們來詳解Swift中的Characters字符類型與String字符串類型,需要的朋友可以參考下

一、引言

Swift中提供了String類型與Characters類型來處理字符串和字符數(shù)據(jù),Swift中的String類型除了提供了許多方便開發(fā)者使用的方法外,還可以與Foundation框架的NSString類進行轉(zhuǎn)換,使用起來十分方便。

二、String基礎(chǔ)

在Swift中,使用雙引號來定義字符串,開發(fā)者可以通過如下代碼來創(chuàng)建一個字符串常量:

?
1
let str = "Hello, playground"

可以通過下面兩種方式來創(chuàng)建空字符串:

?
1
2
let str1 = ""
let str2 = String()

調(diào)用isEmpty方法可以判斷某個字符串是否為空字符串,這個方法將返回一個Bool值,可以直接用于if語句:

?
1
2
3
if str1.isEmpty {
  print("this String Object is Empty")
}

不像Objective-C有NSString與NSMutableString的區(qū)別,在Swift中,如果需要創(chuàng)建可變的字符串,只需用變量來接收:

?
1
2
var str3 = "Hello"
str3 += " "+"World"//str3 = Hello World

String也可以使用插值的方法來構(gòu)造新的字符串,使用\()的方式來將插值的表達式寫在小括號內(nèi),示例如下:

?
1
2
let multiplier = 3
let message = "\(multiplier) times 2.5 is \(Double(multiplier) * 2.5)"//3 times 2.5 is 7.5

獲取字符串的長度使用如下代碼:

?
1
str3.characters.count

Swift中的String可以直接使用==運算符來進行比較,示例如下:

?
1
2
3
let comStr1 = "one two"
let comStr2 = "one two"
comStr1==comStr2//true

下面示例的代碼,用來檢驗字符串是否包含前綴與后綴:

?
1
2
3
let tmp3 = "thank you"
tmp3.hasPrefix("thank")//true
tmp3.hasSuffix("you")//true

三、Character的使用

Character為Swift中的字符類型,在for-in循環(huán)中,可以將字符串中所有的字符進行遍歷:

?
1
2
3
for chara in str3.characters {
  print(chara)
}

也可以創(chuàng)建單獨的字符類型量值,示例如下:

?
1
2
let char1 = ""
var cgar2 = "HS"

事實上,Sting字符串也可以通過Character字符數(shù)組進行初始化:

?
1
2
let chars:[Character] = ["H","e","l","l","o"]
let str4 = String(chars)

向字符串中追加字符使用如下方法:

?
1
2
3
var str5 = ""
let ca:Character = "a"
str5.append(ca)

四、字符串中的特殊字符

字符串中的特殊字符主要指轉(zhuǎn)義字符,Swift中的轉(zhuǎn)義字符列舉如下:

?
1
2
3
4
5
6
7
8
"\0"//"" 空白符
"\\"//"\"反斜杠符號
"\t"//" "制表符
"\n"//換行符
"\r"//回車符
"\'"//"'"單引號
"\""//"""雙引號
"\u{24}"//"$"unicode字符

五、關(guān)于字符串下標

在Swift中,字符串也可以通過下標的方式來訪問其中字符,并且提供了相關(guān)方法來方便的移動下標,示例代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
let tmp = "Hello Swift"
//獲取字符開始的下標值 0
let indexStart = tmp.startIndex
//獲取某個下標后一個字符的下標 1
let next = indexStart.successor()
//獲取最后一個字符的下標值 注意有\(zhòng)0的存在
let indexEnd = tmp.endIndex
//獲取某個下標前一個字符的下標
let pre = indexEnd.predecessor()
//通過下標獲取字符串中的字符 t
var c = tmp[pre]
//進行下標移動 o
var c2 = tmp[indexStart.advancedBy(4)]
//通過遍歷下標來遍歷字符 H e l l o S w i f t
for index in tmp.characters.indices {
   print("\(tmp[index]) ", terminator: "")
}

六、在字符串中插入和移除字符

使用insert函數(shù)來向字符串中插入一個字符,示例如下:

?
1
2
var tmp2 = "Hello"
tmp2.insert("!", atIndex: tmp2.endIndex)

注意,上面示例代碼中的insert函數(shù)只能用于插入一個字符,如果需要插入一組字符,需要使用如下方法:

?
1
tmp2.insertContentsOf(" Swift".characters, at: tmp2.endIndex)

使用removeAtIndex函數(shù)來移除字符串中的一個字符,示例如下:

?
1
tmp2.removeAtIndex(tmp2.endIndex.predecessor())

如果要移除一組字符,主要通過Range來實現(xiàn),示例如下:

?
1
2
let range = tmp2.endIndex.advancedBy(-4)..<tmp2.endIndex
tmp2.removeRange(range)

延伸 · 閱讀

精彩推薦
  • SwiftSwift實現(xiàn)多個TableView側(cè)滑與切換效果

    Swift實現(xiàn)多個TableView側(cè)滑與切換效果

    這篇文章主要為大家詳細介紹了Swift實現(xiàn)多個TableView側(cè)滑與切換效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    乞力馬扎羅的雪雪5822021-01-08
  • SwiftSwift的74個常用內(nèi)置函數(shù)介紹

    Swift的74個常用內(nèi)置函數(shù)介紹

    這篇文章主要介紹了Swift的74個常用內(nèi)置函數(shù)介紹,這篇文章列舉出了所有的Swift庫函數(shù),內(nèi)置函數(shù)是指無需引入任何模塊即可以直接使用的函數(shù),需要的朋友可...

    Swift教程網(wǎng)5802020-12-19
  • SwiftSwift使用CollectionView實現(xiàn)廣告欄滑動效果

    Swift使用CollectionView實現(xiàn)廣告欄滑動效果

    這篇文章主要為大家詳細介紹了Swift使用CollectionView實現(xiàn)廣告欄滑動效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Stevin的技術(shù)博客12372021-01-13
  • SwiftSwift中轉(zhuǎn)義閉包示例詳解

    Swift中轉(zhuǎn)義閉包示例詳解

    在Swift 中的閉包類似于結(jié)構(gòu)塊,并可以在任何地方調(diào)用,下面這篇文章主要給大家介紹了關(guān)于Swift中轉(zhuǎn)義閉包的相關(guān)資料,需要的朋友可以參考下...

    小小小_小朋友11412021-12-26
  • SwiftSwift教程之基礎(chǔ)數(shù)據(jù)類型詳解

    Swift教程之基礎(chǔ)數(shù)據(jù)類型詳解

    這篇文章主要介紹了Swift教程之基礎(chǔ)數(shù)據(jù)類型詳解,本文詳細講解了Swift中的基本數(shù)據(jù)類型和基本語法,例如常量和變量、注釋、分號、整數(shù)、數(shù)值類型轉(zhuǎn)換等...

    Swift教程網(wǎng)5162020-12-18
  • SwiftSwift能代替Objective-C嗎?

    Swift能代替Objective-C嗎?

    這是我在網(wǎng)上上看到的答案,復(fù)制粘貼過來和大家分享一下,因為我和很多人一樣很關(guān)心Swift的出現(xiàn)對Mac開發(fā)的影響和對Objective-C的影響。...

    Swift教程網(wǎng)4412020-12-16
  • Swiftswift where與匹配模式的實例詳解

    swift where與匹配模式的實例詳解

    這篇文章主要介紹了swift where與匹配模式的實例詳解的相關(guān)資料,這里附有簡單的示例代碼,講的比較清楚,需要的朋友可以參考下...

    追到夢的魔術(shù)師14382021-01-06
  • Swiftmac git xcrun error active developer path 錯誤

    mac git xcrun error active developer path 錯誤

    本文主要是講訴了如何解決在mac下使用git;xcode4.6的環(huán)境時,出現(xiàn)了錯誤(mac git xcrun error active developer path)的解決辦法,希望對大家有所幫助...

    Swift教程網(wǎng)2232020-12-16
主站蜘蛛池模板: 久热免费在线观看 | 免费看一级黄色片 | 国产真实精品久久二三区 | 国产一级在线 | 亚洲精品一区二区网址 | 成人第一区 | 九色视频网站 | 在线观看亚洲视频 | 亚洲精品一区中文字幕乱码 | 精品九| 久久久青草婷婷精品综合日韩 | 精品视频国产 | 亚洲狠狠丁香婷婷综合久久久 | 在线一区 | 亚洲精品一区二三区不卡 | 中文字幕日韩av | 天天摸天天干 | 亚洲欧美日韩在线 | 在线日韩成人 | 国产精品一卡二卡 | 黄色片免费在线 | 久久精品一级毛片 | 亚洲二区在线播放 | 亚洲国产婷婷香蕉久久久久久99 | 日韩午夜影院 | 在线观看av国产一区二区 | 欧洲一级毛片 | 亚洲欧美日韩国产综合 | 北条麻妃99精品青青久久 | 精品久久一区 | 日韩精品毛片免费看 | 久草一区 | 81精品国产乱码久久久久久 | 国产精品永久免费自在线观看 | a级性生活片 | 成人在线一区二区 | 久久精品国产视频 | 欧美香蕉 | 一区二区在线免费观看 | 狠狠躁夜夜躁人人爽天天高潮 | 88av网站|