字符串簡(jiǎn)介
在OC中定義字符串 @"". Swift中用""(注意點(diǎn):OC中的字符串是NSString婚瓜,Swift中的字符串是String)
OC中的字符串是一個(gè)對(duì)象须妻,繼承于NSObject。Swift中字符串是一個(gè)結(jié)構(gòu)體。Swfit中字符串性能比OC中的高
var str: String = "Hello, playground" //定義變量時(shí)指定類型
定義字符:var charValue: Character = "韓"
C語(yǔ)言和OC字符串都是以\0結(jié)尾的,Swift則不是
//C語(yǔ)言
char *sringValue = "abc\0def"
printf("%s", stringValue);
//打印結(jié)果為: abc
//OC
NSString *StringValue = @"abc\0def";
printf("%@", stringValue);
//打印結(jié)果為: abc
//Swift
var stringValue2 = "abc\0def"
print(stringValue2)
// 打印結(jié)果為:abcdef
var str: String = "love code";
let length = str.count
print("count:\(length)") //count:9
var str2 = "cool"
str += str2
let num = 30
let name = "lnj"
//在Swift中可以使用 \()來(lái)格式化
var str3 = "name = \(name), age = \(num)" //打印將輸出"name = lnj, age = 30"
//format格式化耍群,所有的值必須放到數(shù)組中(數(shù)組元素為不同類型)
var str4 = String(format: "name:%@,age:%02d",arguments: ["ZhangSan",13]);
判斷兩個(gè)字符串是否相等用 ==
字符串是否為空
var stringA = ""
if stringA.isEmpty {
print( "stringA 是空的" )
} else {
print( "stringA 不是空的" )
}
//打印結(jié)果: stringA 是空的
var str8 = "http://www.blog26.com"
if str8.hasPrefix("www")
{
print("是url")
}
if str8.hasSuffix(".com")
{
print("是頂級(jí)域名")
}
//打印結(jié)果: 是頂級(jí)域名
var str9 = "abc.txt"
print(str9.uppercased())
print(str9.lowercased())
轉(zhuǎn)換基本數(shù)據(jù)類型找筝,返回可選類型
var str10 = "250"
// 如果str不能轉(zhuǎn)換為整數(shù), 那么可選類型返回nil
// str = "250sd", 不能轉(zhuǎn)換所以可能為nil
var numerber:Int? = Int(str10)
if numerber != nil
{
print(numerber!)
}
截鹊腹浮:將String轉(zhuǎn)化為NSString再截取
//在Swift中,如果需要截取字符串袖裕,建議使用OC的字符串截取曹抬,因?yàn)镾wift中String的字符串截取方法使用起來(lái)非常復(fù)雜
//Swift中字符串可以和OC中的字符串非常方便轉(zhuǎn)換
var str5: NSString = "love code";
var str6 = "love code" as NSString;
var subStr = str5.substring(with: NSMakeRange(1, 3)) //輸出:ove
最后編輯于 :2020.06.19 09:41:18
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者