Swift--字符串和字符(一)
字符串是字符,如“hello, world”或“"albatross”的有序集合。Swift字符串由String類型,這又代表字符類型的值的集合來表示。
Swift的字符串和字符類型提供了在代碼中的文字工作快速,兼容Unicode的方式。該語法字符串創(chuàng)建和操縱輕便性和可讀性,具有類似的語法C字符串。串級聯(lián)很簡單,只要用+運算符相加兩個字符串,字符串和可變性是由管理一個常量或變量之間進行選擇,就像在Swift任何其他值。
盡管這種簡單的語法,Swift的字符串類型是一個快速,現(xiàn)代化的字符串實現(xiàn)。每個字符串是由編碼無關(guān)的Unicode字符,并提供了用于訪問這些字符的支持各種Unicode表示。
字符串也可以用來插入常量,變量,常量和表達式轉(zhuǎn)換成更長的字符串,在一個進程被稱為字符串插值。這使得很容易地創(chuàng)建用于顯示,存儲和打印自定義字符串值。
?
字符串字變量
你可以將你的代碼作為字符串文字中包含預定義的字符串值。字符串由一對雙引號(“”)括起來的文本字符。
字符串文字可以被用來提供一個常量或變量的初始值:
let someString = "Some string literalvalue"
需要注意的是Swift推斷為someString常數(shù)a String類型的,因為它是用一個字符串值初始化。
字符串可以包含以下特殊字符:
轉(zhuǎn)義特殊字符\0(空字符),\\(反斜線),使用\ t(水平制表符),\ n(換行符),
\ r(回車),\“(雙引號)和\'(單引號)
單字節(jié)Unicode標量,寫成\ XNN,其中nn是兩位十六進制數(shù)
兩字節(jié)Unicode標量,寫成\ unnnn,其中nnnn是四個十六進制數(shù)字
四字節(jié)Unicode標量,寫成\Unnnnnnnn,其中nnnnnnnn是八進制數(shù)字
?
下面的代碼顯示各種特殊字符的一個例子。該wiseWords常數(shù)包含兩個
轉(zhuǎn)義雙引號字符。該dollarSign,黑心病和sparklingHeart常量展示
三種不同的Unicode標字符格式:
let wiseWords = "\"Imagination ismore important than knowledge\" - Einstein"
?//"Imagination is more important than knowledge" - Einstein
?letdollarSign = "\x24"??????? //$,? Unicode scalar U+0024
?letblackHeart = "\u2665"????? // ?,? Unicode scalar U+2665
?letsparklingHeart = "\U0001F496"?//
?
初始化一個空字符串
初始化字符串有兩種方式,下面的例子你可以任選一種:
var emptyString = ""?????????????? // empty string literal
var anotherEmptyString = String()? // initializer syntax
// these two strings are both empty, andare equivalent to each other
你可以通過檢查一個字符串的的isEmpty屬性的Boolean值來確定他是不是空:
if emptyString.isEmpty {
???println("Nothing to see here")
}
// prints "Nothing to see here"
可變字符串
您可以通過將其分配給一個變量表示一個特定的字符串是否可以修改(或突變)(在這種情況下,可以被修改),或者以恒定的(在這種情況下,它不能被修改):
var variableString = "Horse"
variableString += " and carriage"
// variableString is now "Horse andcarriage"
?
let constantString = "Highlander"
constantString += " and anotherHighlander"
// this reports a compile-time error - aconstant string cannot be modified
?
?
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的Swift--字符串和字符(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为获“最佳移动网络基础设施奖”:5G带
- 下一篇: Swift--字符串和字符(二)