Swift集百家之長,吸收了主流語言java,c,c++等的好的特性,所以它功能十分強大,今天我們就來看看它強大的字符串。
首先,我們帶著這樣幾個問題去了解、理解swift的字符串。
1、swift字符串怎么初始化的?
2、swift字符串長度可變嗎?
3、swift字符串是指針,還是實際的值?
4、swift有哪些特性?
下面,我來一一解答這些問題。
(1) swift 字符串的初始化有2種方式,這兩種方式的結果都是一樣的。我們來初始化一個空字符串。
var str1 = "" // 第一種方式
var str2 = String() // 第二種方式
當初始化一個非空字符串時,可以這樣 var str3 = "hello Word",這里要說明的是,“”里的值可以是任意符號,數字,文字,字母....
(2) swift字符串長度是可變的,當然這只針對于用var 定義的字符串,用let定義的字符串常量是不可變的。正因為這個特性,它可以和其他字符,字符串通過符號“ = ”、“ += ”組合成新的字符串。
var str1 = "hello"
var str2 = "world"
var str3:Character = "!" //這是定義字符的方式
var strs1 = str1 + str2 //結果為“hello word”
var strs2 = strs1 + str3 //結果為“hello word!”
(3)swift字符串 是實際的值,不是指針。當把字符串變量賦值給另一個值,它原來的值不變。當把字符串變量當作參數傳遞時,它也是一個實際的值。
var str1 = "你好"
var str2 = str1
這時,str1的值還是“你好”,由此可見,它不是指針,是一個實際的值。
(4)swift字符串有哪些特性?它的比較機制,驗證機制,遍歷機制,轉換機制,組合機制,都是它的特性。
a、比較機制。字符串之間的比較是可以分多樣的。
它比較完全相等時,用“==”來連接;
它比較前綴相等時,給定一個字符串前綴,然后用要比的字符串,調用hasprefix方法,參數為給定的前綴;
它比較后綴相等時,給定一個字符串后綴,然后用要比的字符串,調用hasSuffix方法,參數為給定的后綴。
舉個例子,我們學校在開興趣班,要統計各個興趣班的人數有多少?用這個就可以很容易的找出來。
let students =["ios,謝明,s3sj101","android,胡軍,s3jn95","ios,都美君,s3jn95","技術支持,高小龍,s3jn92","數據庫,阿斯,s3jn92","數據庫,封劍,s3j101"]
要統計出 各個興趣班的人數,只需這樣做:
var ios = 0 //定義ios班的人數
var android = 0 //定義android班的人數
var technical = 0 //定義技術支持班的人數
var database = 0 // 定義數據庫班的人數
for student in students {
新聞熱點
疑難解答