SwiftでArray内のOptionalをunwrapする
なにを言っているのかよくわからないタイトルになってますが、
Array<T?>をArray
いろいろやり方はありますが、一番手短にかける方法は このようにflatMapにかけるだけ
let array1: [String?] = ["1", nil, "2"] let array2 = array1.flatMap{ $0 }
というのも、mapとflatMapはinterfaceにも微妙な違いがあるため
func map<T>(@noescape transform: (Self.Generator.Element) -> T) -> [T]
func flatMap<T>(@noescape transform: (Self.Generator.Element) -> T?) -> [T]