4
我連載一些JSON到對象中有failable JSON初始化器是這樣的:地圖只非空值
sections = {
let sectionJsons = json["sections"] as! [[String:AnyObject]]
return sectionJsons.map {
DynamicSection($0)
}
}()
DynamicSection的init:
init?(_ json:[String:AnyObject]) {
super.init()
//Boring stuff that can fail
我只想追加一條通過的dynamicSections初始化部分。我怎樣才能做到這一點?
我可以使用filter
+ map
像
return sectionJsons.filter { DynamicSection($0) != nil }.map { DynamicSection($0)! }
但是,這導致INITING的DynamicSection的兩倍,這是我想避免的。有沒有更好的方法來做到這一點?
謝謝!不知道flatMap(Foo.init),這很整齊。 –