微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift1_闭包

//  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,{
    // 下面是比较的原则:
    return $0 < $1  // 使用$0 $1 就不用写闭包的格式了
})
println("否存在 不及格的考生:\(res2)")

XCode 6.3.1

Mac OS 10.10.2

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐