// main.swift // swift1_关闭 // Created by beyond on 15/6/12. // Copyright (c) 2015年 beyond.com All rights reserved. import Foundation println("Hello, 闭包!") func isExistFunc(arr:[Int],baseNum:Int,compareRuleBlock:(num1:Int,num2:Int)->Bool) ->Bool { for item in arr{ if compareRuleBlock(num1: item, num2: baseNum){ // 假设 比較的规则成立。则返回true return true } } return false } // 本次全校英语竞赛的全部考生成绩 var array = [50,20,60,70,90,133] // 以下通过闭包,求出是否存在 130分以上的高分考生 var res1 = isExistFunc(array, 130, { // 以下一行是【闭包的格式,即类型,最后一个in是固定写法】 (num1:Int,num2:Int) -> Bool in // 以下是比較的原则: return num1 >= num2 }) println("是否存在 130分以上的高分考生:(res1)") // 以下通过闭包。求出是否存在 不及格的考生 var res2 = isExistFunc(array, 60, { // 以下是比較的原则: return $0 < $1 // 使用$0 $1 就不用写闭包的格式了 }) println("否存在 不及格的考生:(res2)")
XCode 6.3.1
Mac OS 10.10.2
版权声明:本文博主原创文章,博客,未经同意不得转载。