根本区别:String
是结构体,NSString
是类
在Swift中,结构体是值类型,值类型被赋予给一个变量、常量或者被传递给一个函数的时候,其值会被拷贝。
类是引用类型,与值类型不同,引用类型在被赋值到一个变量、常量或者被传递到一个函数时,其值不会被拷贝
String
与NSString
有自身独有的API,如果用到自身没有的API时也可以相互转换
String
独有API
初始化String
变量
var string = String()
string = "123"
isEmpty
属性
string.isEmpty //bool
sorted()
方法 (字符串排序并返回[Character]
)
"31-ab2".sorted() //["-","1","2","3","a","b"]
filter
方法 (过滤字符)
"12 4d sf".filter{ $0 != " " } //124dsf
dropFirst(_ k: Int = 1)
方法 (删除开头k个元素)
"124dsf".dropFirst(2) // 4dsf
reversed()
方法 (颠倒字符串)
String("124dsf".reversed()) //fsd421
NSString
独有API
integerValue
属性 (转成Int类型,不能转成Int则返回0)
boolValue
属性 (第一个字符为Y、y、T、t、数字则返回true,否则返回false)
isEqual
方法
.
.
.