美文网首页
Swift 4 新特性

Swift 4 新特性

作者: 張無忌 | 来源:发表于2017-11-28 10:48 被阅读8次

改进 private 的访问权限

在 Swift 4 中,extension 也可以访问 private 修饰的属性。

class Person {
    var name: String?
    private var age: Int?
}

extension Person {
    func changeName(name: String) {
        self.name = name
    }
    
    func changeAge(age: Int) {
        self.age = age
    }
}

字符串变成了一个集合类型

let str = "hello world"

print(str.count)

str.forEach {
    print($0)
}

截取字符串

// 定义一个字符串
let s = "hello mars"

// 找到空格所在的索引
var i = s.index(of: " ")!

// 截取hello,以下三种截取方法的结果是相同的
let freeting = s[s.startIndex..<i]
let freeting1 = s[...i]
let freeting2 = s.prefix(upTo: i)

// 使索引向后便宜一个单位
i = s.index(i, offsetBy: 1)

// 截取world,以下三种截取方法的结果是相同的
let name = s[i ..< s.endIndex]
let name1 = s[i...]
let name2 = s.suffix(from: i)

相关文章

网友评论

      本文标题:Swift 4 新特性

      本文链接:https://www.haomeiwen.com/subject/iqrsbxtx.html