字符串
var swift = "Swift is fun"
swift.dropFirst(4)
cafe1.unicodeScalars.forEach{print($0)}
cafe1.characters
let index = cafe1.index(cafe1.startIndex, offsetBy: 3)
cafe1[index]
String(cafe1.characters.prefix(3))
//插入字符
var mixStr = "Swift很有趣"
if let index = mixStr.characters.index(of: "很"){
mixStr.insert(contentsOf: " 3.0", at: index)
}
//替换字符
if let cnIndex = mixStr.characters.index(of: "很"){
mixStr.replaceSubrange(cnIndex ..< mixStr.endIndex, with: " is intersting!")
}
String(mixStr.characters.suffix(12).dropLast()) //后缀
//特定字符分割字符串
mixStr.characters.split(separator: " ").map(String.init)
//基数位置作为分隔符变量
var i = 0
mixStr.characters.split { _ in
if i > 0 {
i = 0
return true
}else {
i += 1
return false
}
}.map(String.init)
未完待续
字符串Tuple打包数据
元组:是一个包含了若干个相关联变量的对象,可以定义为只有数据没有方法的轻量级数据结构
创建元组:let success = (200 , "HTTP OK")
let fileNotFound = (404 , "File Not Found")
由于Swift的类型推导,其类型推断为(Int, String).Type
元组分解(tuple decomposition):
playground代码var (successCode, successMessage) = success
//创建一个新的元祖,修改不改变原来success元祖的值
successCode
successMessage
successCode = 201
//使用_忽略不关注的变量
let (_, ErrorMsg) = fileNotFound
ErrorMsg
注意:只有变量数相同的两个tuple 才能互相比较,不同会发生编译错误;相同数量tuple比较,根据第一个不相等的变量的大小来进行比较;只能对最多包含6个变量的元组进行比较,多于六个编译出错
iOS面试交流群:473774941
不打赏就来扫描二维码关注朋友的公众号吧!
持续更新!
网友评论