class MyViewClass: UIView, Fadeable { }
3.检查所有的集合项目是否满足一个状态
Swift 4.2新推出了allSatisfy()方法,让它运行一个状态闭包(condition closure),如果传递给这个闭包后,所有元素都返回true,那么allSatisfy()就返回true
例如某人考试结果数组如下:
let scores = [85, 88, 95, 92]
根据一个学生是否所有考试都达到85分,决定他是否通过。
let passed = scores.allSatisfy { $0 >= 85 }
4.使用解构(destructuring)操作元祖(tuples)
解构能够把元祖分解成独立数值,这样就可以更容易的操作它们。比如你也许想调用这样一个函数:
func getCredentials() -> (name: String, password: String) {
return ("Taylor Swift", "biebersux")
}
它会返回一个包含两个字符串的元祖,如果你想让他们继续在一起,你可以:
let user = getCredentials()
print(user.name)
print(user.password)
然而,重构让我们能够把它们分开:
let (username, password) = getCredentials()
print(username)
print(password)
你甚至可以在函数被调用完后做这些——它们是一样的:
let user = getCredentials()
let (username, password) = user
这个技术让Swift能够简单轻易地解决一个经典入门代码问题:怎样在不使用第三个变量的情况下,交换两个变量。








