Java8 の Stream API にある forEach メソッドを Swift で再現してみました。
instruction
extension Array {
func forEach(consumer: (Element) -> Void) -> Void {
for obj in self {
consumer(obj as Element)
}
}
}
次のような使い方ができます。
sample1
["apple", "orange", "pear"].forEach { data in print(data) }
ちなみに次のプログラムと同じことをしています。
sample2
for data : String in ["apple", "orange", "pear"] {
print(data)
}
filter、map、reduceなどと組み合わせれば一貫性のある使い方ができますね。
次のようにしても同じ事ができるというのは秘密です。
taboo
["apple", "orange", "pear"].map { data in print(data) }