在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
// Playground - noun: a place where people can play
import Cocoa
var str = "Hello, playground"
var dic:Dictionary<Int,String>=[1:"Name",2:"Age"] for (id,name) in dic{ println("id:\(id) name:\(name)") }
// 泛型 //func isEquals<T>(a: T,b: T)->Bool{ // if(a == b ){ // return true // } // return false //} //var resultIsEquals = isEquals(1, 1) //println(resultIsEquals)
// 将函数作为返回类型 func calculate(por:String)->(Int,Int)->Int{
func add(a:Int,b:Int)->Int{ return a + b } func sub(a:Int,b:Int)->Int{ return a-b } var result:(Int,Int)->Int
switch (por){ case "+": result = add case "-": result = sub default: result=add } return result }
// 闭包改造 func calulateFunc(pro:String)->(Int,Int)->Int{
var result:(Int,Int)->Int switch (pro){ case "+" : result = {(a:Int,b:Int)->Int in return a + b } // 简写 方法 result = { a, b in return a + b} // 简化 参数名称 $0 表示第一个参数,$1表示第二个参数,以此类推 result={$0 + $1}
default : result = {(a:Int,b:Int)->Int in return a - b } } return result }
// 调用方法 var f1=calulateFunc("+") println("jin \(f1(10,6))")
/* // 闭包函数 类似于 C# Lambda表达式 // 闭包函数 定义:字包含的匿名函数代码块,可以作为表达式、函数参数、函数返回值,闭包表达式 的运算结果 是一种函数类型 {(参数列表)-> 返回类型 in 语句组 } */
|
请发表评论