1.Swift 中是 String 类型 - 结构体 - 量级更轻 - 推荐使用 - 支持直接遍历 2.OC 中 NSString 类型 - 继承自 NSObject 的对象 - NSString 不支持遍历 3.字符串的拼接
//拼接
func demo(){
let name : String = "王二"
let age = 28
let center = view.center
let str = "\(name) \(age) \(center)"
//字符串的拼接 \(变量名) 方式
print(str)
}
4.字符串的遍历
//遍历
func demo2(){
let string = "hello word"
for c in string{
print(c)
}
}
5.字符串的长度
//长度
func demo3(){
let string : NSString = "你好世界"
print(string.length)
let string1 = "你好世界"
//一个中文的 UTF 对应 3 个字节,返回的 C 语言的字符串长度
print(string1.lengthOfBytes(using: String.Encoding.utf8))
//返回字符串中的字符数量 - 字符串的长度
print(string1.count)
}
6.格式化字符串
//格式化
func demo4(){
let h = 8
let m = 4
let s = 2
print("\(h):\(m):\(s)")
//如果需要使用格式字符串的时候,可以单独使用 String(format:xxx)
let dateString = String(format: "%02d:%02d:%02d", arguments: [h,m,s])
print(dateString)
//可以直接在格式字符串后面添加 参数,用 逗号分开
let dataString2 = String(format: "%02d:%02d:%02d", h,m,s)
print(dataString2)
}
?7.字符串的子串
//字符串的子串 提示: 在 Swift 中 String 取字串不是特别好写,建议使用 NString
func demo5(){
let str = "hello word"
let s1 = (str as NSString).substring(with: NSMakeRange(2, 5))
print(s1)
//参考 Swift 语法中,变化最频繁
let s2 = str.substring(from: "1234".endIndex)
print(s2)
//指定范围 ..<
let startIndex = str.index(str.startIndex, offsetBy: 1)
let endIndex = str.index(str.endIndex, offsetBy: 0)
let range = startIndex..<endIndex
let s3 = str.substring(with: range)
print(s3)
let s4 = str[range]
print(s4)
}
|