亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

[swift]4.0原生字符串

2019-11-06 07:45:41
字體:
來源:轉載
供稿:網友

4.1字符 1.格式: 變量關鍵字和常量關鍵字 變量 : Character = 字符值。 注意點:字符值 必須用雙引號括起來, 必須是一個字符。 例: var ch :Character = “c”// 字符值 必須用雙引號,并且是一個字符 PRintln(“ch=(ch)”) 運行結果 ch=c 2.字符串和字符的關系: 字符串是由N個字符組成的,即字符串是字符的集合。 例: var str = “ABC”//字符串 “ABC” 是有 三個字符組成的分別是 :字符”A”,字符“B”,字符”C” 4.2創建字符串 1.Swift支持String字符串類型和Charater字符類型來提供一個快速的、支持Unicode編碼的方式來處理字符操作。 Swift的String類型和Objective-C的NSString無縫接合,所有NSString的API對String同樣適用。但是String變量總是可變長的,而在Objective-C中變長字符串是NSMutableString。 2.Swift字符串是傳值類型,在傳入函數參數或者賦值時,它是新建一個原來字符串的拷貝,而不是分配一個指針,新建字符串和原來的字符串并不儲存在同一個空間。區別于Objective-C中NSString,后者是傳址類型,即相當于一個指針。 Character字符類型同樣用雙引號把字符括起來,每一個字符代表一個獨立的Unicode字符,字符串相當于Character的一個集合。 字符串和字符之間可以兩兩連接,使用最簡單的運算符 +,+=同樣適用。 3.創建空字符串 /定義一個空字符串第一種方法: var str1=”“定義一個空字符串 第二種方法: var str2 = String() 運行結果 str1= str2= 4.判斷字符串是否為空 (isEmpty) 判斷字符串是否為空: var str3:String = “”if str3.isEmpty { //isEmpty是字符串的一個屬性,判斷字符串是否為空 println(“str3的值是空”) } else{ println(“str3的值不為空”) }

運行結果 str3的值是空 5.字符串的轉義符 /0 空字符 / 反斜杠/ t 制表符/n 換行符/r 回車符 /” 雙引號/’ 單引號 例: 換行符: var strA = “Hello World /n 1”// /n是換行符 println(“strA=(strA)”) 引號: var strB = “/”雙引號”// /” 是代表雙引號 println(“strB=(strB)”) 單引號: var strC = “/’單引號”// /’ 代表單引號 println(“strC=(strC)”) 運行結果 strA=Hello World 1 strB=”雙引號 strC=’單引號 4.3字符串拼接 1.字符和字符串拼接,用+直接來拼接,組成新的字符串 (和字符串拼接用法一直) 例:import Foundation var C:Character = “S”//定義C 是字符變量var str = C + ” hello” println(str ) 運行結果 S hello 2.字符串變量和常量用+或 +=來拼接 組成新的字符串 例: 多個字符串變量拼接 用 + 來拼接 var str4 = “hello” var str5 = ” swift” var str6 = str4+str5 //字符串變量拼接 println(“str6=(str6)”) 字符串變量和常量用+或 +=來拼接 var str7=”hello ” str7 += “swift”//字符串變量和字符常量拼接可以用+= 拼接 println(“str7=(str7)”) 運行結果 str6=hello swift str7=hello swift 4.字符串和占位變量 組成新的字符串 var a = 3//定義一個整形變量 var strQ = “a = (a)”// 字符串和占外變量,組成新的變量(占外變量表示(變量)) println(“(strQ)”) 運行結果 a = 3 4.4字符串插入、刪除和替換 1.對應可變字符串可以插入、刪除和替換,String提供了幾個方法可以幫助實現這些操作。這些方法如下: splice(_:atIndex:)。在索引位置插入字符串。 insert(_:atIndex:)。在索引位置插入字符。 removeAtIndex(_:)。在索引位置刪除字符。 removeRange(_:)。刪除指定范圍內的字符串。 replaceRange(_:,with: String) 。使用字符串或字符替換指定范圍內的字符串。   代碼: var str =”Swift” print(“原始字符串:(str)”) str.splice(“Objective-Cand “.characters, atIndex: str.startIndex) str.insert(“.”,atIndex: str.endIndex) str.removeAtIndex(str.endIndex.predecessor()) var startIndex =str.startIndex var range =startIndex…endIndex str.removeRange(range) startIndex =str.startIndex str.replaceRange(range,with: “C++”) print(“替換范圍后:(str)”) 輸出結果: 原始字符串:Swift 插入字符串后:Objective-C and Swift 插入.字符后:Objective-Cand Swift. 刪除.字符后:Objective-Cand Swift 刪除范圍后:C and Swift 替換范圍后:C++ and Swift 4.5字符串比較 1.字符串比較:OC: NSString *str1 = @”abc”; NSString *str2 = @”abc”; if ([str1 compare:str2] == NSOrderedSame) else { NSLog(@”不相等”); } { NSLog(@”相等”); } else { NSLog(@”不相等”); } Swift:(== / != / >= / <=), 和C語言的strcmp一樣是逐個比較 var str4 = “abc”; var str5 = “abc”; if str4 == str5 { print(“相等”); } else { print(“不相等”); } var str6 = “abd”; var str7 = “abc”; else { print(“不大于等于”); } 4.6大小和相等比較 字符串比較可以分為:不區分大小寫比較、區分大小寫比較以及本地化比較三部分。首先我們來看不區分大小寫比較,不區分大小寫比較顧名思義就是不區分字符串中字母的大小寫,即A和a相同。 1.不區分大小寫比較 在NSString中使用caseInsensitiveCompare(_:)方法實現這一功能,其語法形式如下: func caseInsensitiveCompare(_ string: String) -> ComparisonResult 其中,string用來指定一個比較的字符串。該方法的返回值為ComparisonResult類型 。ComparisonResult是一個枚舉類型,包含了以下3個成員: q orderedAscending(-1):左操作數小于右操作數。 q orderedSame(0):兩個操作數相等。 q orderedDescending(1):左操作數大于右操作數。 2.區分大小寫比較 有不區分大小寫比較,相對的就有區分大小寫比較。在NSString中提供了4種方法實現了這種比較, 分別為:compare(:)、compare(:options:)、compare(:options:range:)和compare(:options:range:locale:)方法。 (1)compare(_:)方法就是用來比較字符串的,它需要區分字符串的大小寫,其語法形式如下: func compare(_ string: String) -> ComparisonResult 其中,string用來指定一個比較的字符串。 compare(:options:)方法和compare(:)方法實現的功能類似,它是對字符串進行比較,但是它比compare(_:)方法多了一個mask參數。該參數可以用來指定一個選項標記(這個標記可以作為字符串比較的條件)。 在編程中,mask參數最常被設置為以下5種: q caseInsensitive:不區分大小寫比較 q literal:區分大小寫比較 q backwards:從字符串末尾開始搜索 q anchored:搜索限制范圍的字符串 q numeric:按照字符串里的數字為依據,算出順序。例如 Foo2.txt < Foo7.txt < Foo25.txt compare(_:options:)方法的語法形式如下: func compare(_ string: String, options mask: NSString.CompareOptions = []) -> ComparisonResul (3)compare(:options:range:)方法和compare(:options:)方法的功能類似,但是它比compare(_:options:)方法多了一個rangeOfReceiverToCompare參數,此參數可以用來對比較范圍進行設置。其語法形式如下: func compare(_ string: String, options mask: NSString.CompareOptions = [], range rangeOfReceiverToCompare: NSRange) -> ComparisonResult (4)compare(:options:range:locale:)方法和compare(:options:range:)方法的功能類似,但是它比compare(_:options:range:)方法多了一個locale參數,此參數可以用來設置語言環境。其語法形式如下: func compare(_ string: String, options mask: NSString.CompareOptions = [], range rangeOfReceiverToCompare: NSRange, locale: AnyObject?) -> ComparisonResult 3.本地化比較 對于本地化比較在NSString中提供了3種方法, 分別為: localizedCaseInsensitiveCompare(:)、localizedStandardCompare(:)和localizedCompare(_:)。 (1)localizedCaseInsensitiveCompare(_:)方法為不區分大小寫、本地化比較字符串,其語法形式如下: func localizedCompare(_ string: String) -> ComparisonResult 其中,string用來指定一個比較的字符串。 (2)localizedStandardCompare(_:)方法為本地化標準字符串的比較,其語法形式如下: func localizedStandardCompare(_ string: String) -> ComparisonResult 其中,string用來指定一個比較的字符串。 localizedCompare(_:)方法是區分大小寫、本地化比較字符串,其語法形式如下: func localizedCompare(_ string: String) -> ComparisonResult 其中,string用來指定一個比較的字符串。 4.判斷字符串 在NSString中提供了3種對字符串判斷的方法, 分別為:hasprefix(:)、hasSuffix(:)和isEqual(to:)方法。 (1)hasPrefix(_:)方法用來判斷字符串是否以某一指定字符串開頭,其語法形式如下: func hasPrefix(_ str: String) -> Bool 其中,str用來指定一個字符串。 (2)hasSuffix(:)方法正好和hasPrefix(:)方法相反,它是用來判斷字符串是否以某一指定字符串結尾的,其語法形式如下: func hasSuffix(_ str: String) -> Bool 其中,str用來指定一個字符串。 (3)isEqual(to:)方法是用來判斷字符串是否相等的,其語法形式如下: func isEqual(to aString: String) -> Bool 其中,aString用來指定字符串。 4.7前綴和后綴比較 1.前綴/后綴相等 通過調用字符串的 hasPrefix/hasSuffix 方法來檢查字符串是否擁有特定前綴/后綴。兩個方法均需要以字符串作為參數傳入并傳出 Boolean 值。兩個方法均執行基本字符串和前綴/后綴字符串之間逐個字符的比較操作。 下面的例子以一個字符串數組表示莎士比亞話劇 羅密歐與朱麗葉 中前兩場的場景位置: let romeoAndJuliet = [ “Act 1 Scene 1: Verona,A public place”, “Act 1 Scene 2: Capulet’s mansion”, “Act 1 Scene 3: A room in Capulet’s mansion”, “Act 1 Scene 4: A street outside Capulet’s mansion”, “Act 1 Scene 5: The Great Hall in Capulet’s mansion”, “Act 2 Scene 1: Outside Capulet’s mansion”, “Act 2 Scene 2: Capulet’s orchard”, “Act 2 Scene 3: Outside Friar Lawrence’s cell”, “Act 2 Scene 4: A street in Verona”, “Act 2 Scene 5: Capulet’s mansion”, “Act 2 Scene 6: Friar Lawrence’s cell” ]


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲美女福利视频网站| www.亚洲成人| 深夜福利亚洲导航| 欧美成人中文字幕在线| 91在线免费观看网站| 久久99国产精品自在自在app| 色偷偷偷亚洲综合网另类| 久久艳片www.17c.com| 国产免费一区视频观看免费| 两个人的视频www国产精品| 欧美激情亚洲视频| 免费91麻豆精品国产自产在线观看| 国产日韩换脸av一区在线观看| 中文字幕一区二区精品| 神马久久桃色视频| 日韩av片免费在线观看| 亚洲欧美国产精品久久久久久久| 91夜夜揉人人捏人人添红杏| 久久精品99久久香蕉国产色戒| 亚洲欧美综合区自拍另类| 亚洲免费av片| 欧美日韩国产丝袜美女| 亚洲免费av片| 国产日本欧美一区二区三区| 97成人精品区在线播放| 国产精品久久网| 中文字幕一区二区精品| 精品久久久久久国产| 亚洲午夜精品久久久久久久久久久久| 亚洲激情免费观看| 亚洲欧美中文字幕在线一区| 久久99久久99精品中文字幕| 亚洲国产一区二区三区在线观看| 亚洲va欧美va在线观看| 国产在线拍揄自揄视频不卡99| 日韩精品免费在线| 日韩精品欧美国产精品忘忧草| 国产成人一区二区三区| 亚洲自拍高清视频网站| 中文字幕亚洲二区| 日韩av在线不卡| 亚洲一二在线观看| 精品中文字幕久久久久久| 亚洲国产成人av在线| 91网站在线看| 国产精品美女主播| 一本一本久久a久久精品牛牛影视| 欧美中在线观看| 欧美黄色三级网站| 国产精品成人久久久久| 亚洲午夜女主播在线直播| 国产免费一区二区三区在线观看| 最近2019年手机中文字幕| 日韩在线高清视频| 亚洲成人免费在线视频| 日韩av在线播放资源| 亚洲成人精品久久久| 揄拍成人国产精品视频| 777午夜精品福利在线观看| 亚洲欧美一区二区三区久久| 国产精品久久色| 操日韩av在线电影| 亚洲国产婷婷香蕉久久久久久| 国产精品jizz在线观看麻豆| 欧美日韩视频免费播放| 国产日本欧美视频| 欧美电影在线观看高清| 国产欧美日韩高清| 亚洲精品一区在线观看香蕉| 欧美极品少妇与黑人| 亚洲欧美日韩精品久久奇米色影视| 成人欧美一区二区三区黑人孕妇| 中文字幕欧美在线| 国产视频精品久久久| 亚洲女人被黑人巨大进入al| 精品欧美国产一区二区三区| 欧美第一淫aaasss性| 亚洲一品av免费观看| 国产免费一区视频观看免费| 欧美日韩国产激情| 久久免费视频在线| 成人观看高清在线观看免费| 亚洲精品国偷自产在线99热| 国产精品高潮视频| 成人激情黄色网| 国产一区二区黑人欧美xxxx| 中文字幕国产亚洲2019| 亚洲xxxxx| 成人黄色免费在线观看| 欧美日韩亚洲一区二区| 国产精品户外野外| 成人在线国产精品| 欧美日韩激情小视频| 国产成人av网址| 91久久久久久久一区二区| 亚洲小视频在线观看| 欧美富婆性猛交| 亚洲免费电影一区| 日韩av日韩在线观看| 精品久久久久久久久久久久久| 欧美电影免费观看高清完整| 欧美夫妻性生活视频| 日韩中文综合网| 一本色道久久88综合日韩精品| 精品中文字幕在线2019| 亚洲福利在线观看| 亚洲精品按摩视频| 精品偷拍一区二区三区在线看| 成人免费网站在线观看| 日韩精品久久久久久久玫瑰园| 亚洲最大成人免费视频| 国产一区二区三区三区在线观看| 中文字幕国产亚洲| 亚洲欧美国产一本综合首页| 亚洲女在线观看| 国产精品入口福利| 亚洲精品v欧美精品v日韩精品| 久久中文字幕在线视频| 欧美性猛交xxxx免费看漫画| 动漫精品一区二区| 亚洲国产97在线精品一区| 亚洲国产美女精品久久久久∴| 91精品国产自产在线老师啪| 91精品在线观| 欧美激情亚洲另类| 北条麻妃一区二区三区中文字幕| 国产在线高清精品| 欧美激情亚洲视频| 亚洲网站在线播放| 国产精品久久久久久婷婷天堂| 亚洲精品久久久久中文字幕欢迎你| 精品一区二区三区四区| 亚洲色图狂野欧美| 亚洲色无码播放| 精品日本高清在线播放| 国产精品亚洲аv天堂网| 亚洲国产欧美精品| 欧美激情精品久久久久久免费印度| 亚洲自拍高清视频网站| 日韩欧美亚洲成人| 97婷婷大伊香蕉精品视频| 成人午夜在线视频一区| 国产免费成人av| 97视频在线观看免费| 欧美电影免费观看| 久久精彩免费视频| 中文字幕亚洲自拍| 国产综合在线视频| 日本一本a高清免费不卡| 欧美精品精品精品精品免费| 亚洲精品中文字幕女同| 91久久国产精品91久久性色| 欧美国产日韩在线| 日韩激情在线视频| 91精品国产综合久久久久久蜜臀| 欧美肥婆姓交大片| 在线国产精品播放| 狠狠躁天天躁日日躁欧美| 成人黄色中文字幕| 亚洲国产91色在线| 国产精品欧美日韩久久| 久久久精品在线| 色综合视频网站| 欧美另类xxx|