objective-cのblocksに変わるものとしてSwiftではモダンなクロージャが導入されています。 簡単な例から var closure = {(valueMap:Dictionary<String,Int>) -> Int in var total = 0 for p in valueMap.values { total += p } return total } 解説すると dictionary を引数として Int を返すクロージャを宣言して 変数”closure”に格納しています。 なんだか構文がややこしいように見えますが”in”の前にパラメータ・戻り値、”in”の後に実装を書き、全体を{・・・}で囲っているだけです。 こんな構造 { (引数) -> (戻り値) in //実装 } blocksに比べると随分と分かりやすい構文だと思います。 この変数に格納されたクロージャを