007--swift基础语法(字符串)

xiaoxiao2021-02-28  100

字符串遍历

//MARK: -字符串遍历 func demo() { //NSString不支持一下方式的遍历 let str:String = "我真的好像再活五百年" for c in str.characters { print(c) } }

字符串的长度

//MARK: -字符串的长度 func demo1(){ let str = "hello world你好" // 1、 返回指定编码的对应的字符数量 // utf-8的编码,每个汉字是3个字节 print(str.lengthOfBytes(using: .utf8)) // 2、字符串长度 --返回字符的个数(推介使用) print(str.characters.count) // 3、使用NSString中转 /** str as NSString OC写法(HMTableView *)[tableView dequeue...] Swift 中可以使用 `值 as 类型` 类型转换 */ let ocStr = str as NSString print(ocStr.length) }

字符串拼接

//MARK: -字符串拼接 //我和我的小伙伴再也不用考虑 stringWithFormat 了 func demo2() -> () { let name = "老王" let age = 18 let title:String? = "BOSS" let point = CGPoint(x: 100, y: 200) // \(变量、常量) //拼接字符串需要注意 可选项 // let str = "\(name) \(age) \(title)" //打印出来是“老王 18 Optional("BOSS")” //解决办法: // let str = "\(name) \(age) \(title ?? "")" let str = "\(name) \(age) \(title ?? "") \(point)" print(str) }

格式化

//MARK: -格式化 func demo3() { let h = 8 let m = 9 let s = 6 let dateStr = "\(h):\(m):\(s):" print(dateStr) //使用格式字符串格式化 let dateStr1 = String(format: "d:d:d",h,m,s) print(dateStr1) }

字符串的子串

//MARK: -字符串的子串 func demo4(){ //建议:一般使用NSString作为中转,因为swift取子串的方法一直在优化 // 更容易理解 let str = "我们一起取费" // 1、 NSString let ocStr = str as NSString let s1 = ocStr.substring(with: NSMakeRange(2, 3)) print(s1) // 2、String 的 3.0 的方法 // let r = 0..<5 // str.substring(with: <#T##Range<String.Index>#>) // index // startIndex position = 0 print(str.startIndex) // endIndex position == str.length print(str.endIndex) let s2 = str.substring(from: "我们".endIndex); print(s2) let s3 = str.substring(from: "abc".endIndex) print(s3) //去字符串范围 guard let range = str.range(of: "一起") else{ print("没有找到字符串") return } //一定找到的范围 print("-------") print(range) print(str.substring(with: range)) }
转载请注明原文地址: https://www.6miu.com/read-84924.html

最新回复(0)