字符串的介紹
- 字符串在任何的開發中使用都是很是頻繁的
- OC和Swift中字符串的區別
- 在OC中字符串類型時NSString,在Swift中字符串類型是String
- OC中字符串@"",Swift中字符串""
- 使用
String
的緣由
String
是一個結構體,性能更高
NSString
是一個 OC
對象,性能略差
String
支持直接遍歷
Swift
提供了 String
和 NSString
之間的無縫轉換
字符的定義
// 1> 定義不可變字符串 : 使用let修飾
let str : String = "hello swift"
// str = "hello Objective-C" 錯誤寫法
// 2> 定義可變字符串 : 使用var修飾
var strM : String = "hello world"
strM = "hello china"
字符串的使用
獲取字符串的長度
let count = str.characters.count
字符串拼接
let str1 = "Hello"
let str2 = "World"
let str3 = str1 + str2
let name = "why"
let age = 18
let info = "my name is \(name), age is \(age)"
let min = 3
let second = 4
let time = String(format: "%02d:%02d", arguments: [min, second])
字符串的截取
- Swift中提供了特殊的截取方式
- 簡單的方式是將String轉成NSString來使用
let urlString = "www.520it.com"
// Swift中經過 as 關鍵字能夠將String類型轉成NSString的類型
let header1 = (urlString as NSString).substring(to: 3)
let footer1 = (urlString as NSString).substring(from: 10)
let range1 = NSRange(location: 4, length: 5)
let middle1 = (urlString as NSString).substring(with: range1)
let urlString = "www.520it.com"
let headerIndex = urlString.index(urlString.startIndex, offsetBy: 3)
let header2 = urlString.substring(to: headerIndex)
let footerIndex = urlString.index(urlString.endIndex, offsetBy: -3)
let footer2 = urlString.substring(from: footerIndex)
let startIndex = urlString.index(urlString.startIndex, offsetBy: 4)
let endIndex = urlString.index(urlString.startIndex, offsetBy: 9)
let range2 = Range(startIndex..<endIndex)
let middle2 = urlString.substring(with: range2)