siwft—3
来源:互联网 发布:知天命指的是多少岁 编辑:程序博客网 时间:2024/06/10 12:49
siwft—3
//
// main.swift
// swift-3-0924
//
// Created by fuiying on 15/9/24.
// Copyright (c) 2015年 fuiying. All rights reserved.
//
import Foundation
println(“Hello, World!”)
//闭包。类似与OC中的block,反向传值、引起代码的回调
func hasClosureMathes(arr : [Int], value:Int, cb:(num:Int, vaule:Int)->Bool)->Bool{
for item in arr{ if cb(num:item, vaule:value){ return true }}
return false
}
//in 是闭包的一个标志 参数列表和返回值类型 in 闭包所要实现的代码块
var v1 = hasClosureMathes([2, 45, 6], 12) { (num, vaule) -> Bool in
if num < vaule{ return true}else{ return false}
}
print(v1)
var v2 = hasClosureMathes([2, 45, 6], 1) { (num, vaule) -> Bool in
if num < vaule{ return true}else{ return false}
}
print(v2)
//定义一个数组 里面 string类型的人名,判断数组里面是否有一个叫小美的人,如果有返回“大家好,小美在这呢”,如果没有,返回“咦,怎么找不到小美”
func nameList(list:[String], block:(name:String)->Bool)->String{
for item in list{ if block(name: item){ return "大家好,小美在这呢" }}return "咦,怎么找不到小美"
}
var v3 = nameList([“小明”, “小哇”, “小美”], { (name) -> Bool in
if name == "小美"{ return true}return false
})
print(v3)
//如果闭包的代码块里面只有一句代码的话,可以省掉if
//1、省掉if
var v4 = nameList([“小明”, “小哇”, “小美”], { (name) -> Bool in
name == "小美"
})
print(v4)
//2、省掉闭包块
//
var v5 = nameList([“小明”, “小哇”, “小美”], {
$0 == "小美"
})
print(v5)
//闭包在我们的实际应用中都有哪些。
//数组的map 属性,可以遍历数组,然后对其进行相应地操作
//泛型, 比较抽象。他会根据你进行的操作做出判断给你返回相应地值。比如你进行+操作。他就返回 Int 数组,如果你进行>操作,他就给你返回true 或者false的值
var numbers = [12, 23, 45, 56, 57]
let mapedNumbers = numbers.map ({
number in number > 10
})
print(mapedNumbers)
//数组的sort方法,这个方法会自动遍历进行前后比较,如果num1
- siwft—3
- siwft初学(一)
- siwft入门-UITableViewCell颜色
- 直播 苹果把siwft 开源!
- 3——3
- 数据仓库——3
- 16——3
- Frankenstein——3
- 3——1
- 3——2
- 3——管道
- python ——3
- Nginx——3
- 【3-3】函数——递归函数
- 3dmax————
- 幅射圣经——3
- 证券公司信息化——3
- PHP——计数器3
- mysql创建用户及赋权限
- C++ 虚函数表解析
- swift-2
- Android 开发的常用工具类(二)——Toast统一管理类
- 在ESXI主机上启用root用户SSH登录
- siwft—3
- 使用Scrapy框架编写爬虫
- 欢迎使用CSDN-markdown编辑器
- vi命令
- Linux下打包压缩war、解压war包和jar命令
- 墓碑机制 Understanding Doze
- swift—4
- stoyboard之间的跳转
- WordPress 利用 XMLRPC 高效爆破 原理分析