字符串
在 Swift 中绝大多数的情况下,推荐使用 String 类型
使用 String
的原因
-
String
是一个结构体,性能更高-
String
目前具有了绝大多数 NSString 的功能 -
String
支持直接遍历
-
-
NSString
是一个OC
对象,性能略差 -
Swift
提供了String
和NSString
之间的无缝转换
字符串实例化
// 使用字符串字面量
var stringA = "Hello, World!"
print( stringA )
// String 实例化
var stringB = String("Hello, World!")
print( stringB )
遍历字符串
for str in stringB {
print(str)
}
字符串拼接
let stringC = stringA+" hello swift"
let i = 100
let view = UIView()
view.backgroundColor = UIColor.red
print(stringC+"打出的字符串是\(i) view的背景色\(String(describing: view.backgroundColor))")
字符串格式化
for _ in 0...3 {
let str = String(format: "hehe - %02d", arguments: [arc4random_uniform(10)])
print(str)
}
在实际开发中,如果需要指定字符串格式,可以使用 String(format:...)
的方式
* 注意:后面的参数需要放在一个数组
中
字符串截取
一段很不好理解的方法,暂时还没搞明白
// var stringA = "Hello, World!"
var indexStart = stringA.index(of: ",")
let indexEnd = stringA.index(stringA.endIndex, offsetBy: -3)
let subString1 = stringA[stringA.startIndex..<indexStart!]
let subString2 = stringA[indexStart!..<stringA.endIndex]//stringA[indexStart...indexEnd];
let index4 = stringA.index(stringA.startIndex, offsetBy: 4)
print("subString1=\(subString1) \nsubString2= \(subString2) \(stringA.prefix(through: index4))")