分享十条实用的Swift小提示

2020-01-09 00:14:44刘景俊


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能够简单轻易地解决一个经典入门代码问题:怎样在不使用第三个变量的情况下,交换两个变量。