在 if 语句中获取问题...
func sortStudents(students: [Student], byNames: [String] ) -> [Student]{
var result = [Student]()
for name in byNames {
if let students = students.filter{ $0.sName == name}{
if students.count > 0{
result.append(students[0])
}
}
}
return result
}
最佳答案
理论上是这样
if let students = students.filter({ $0.sName == name }) { ... }
但是 filter
无论如何都不会返回可选的,所以你根本不应该使用 if let
语法。
所以你可以这样做:
func sortStudents(students: [Student], byNames: [String] ) -> [Student]{
var result = [Student]()
for name in byNames {
let students = students.filter { $0.sName == name }
if students.count > 0 {
result.append(students[0])
}
}
return result
}
关于swift - if 语句中一行的连续语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34411296/