状況
例えば以下のような配列があって、null
を排除したい
final list = [1,null,3,null,5]
Dartにはビルトインの高階関数が用意されていないが、whereType
を用いたnullの排除ができる
final nonNullList = list.whereType<T>().toList() // 今回は`T=int`
補足
SwiftはcompactMap
が用意されている
let list = [1,nil,3,nil,5]
let nonNilList = list.compactMap{ $0 }
KotlinはmapNotNull
が用意されている
val list = listOf(1,null,3,null,5)
val nonNilList = list.mapNotNull{ it }