1. 函数使用func声明 name 和age是参数 ->后面是返回类型
func test1 (let name:String,let age:Int)->String{
return "姓名:"+ name+“\n”+“年龄:”+String(age);
}
打印返回的字符串 age:为标签 用以说明后面参数的含义
print(test1("哆啦A梦",age:12))
2.返回参数和类型可以是多个
func test2() ->(String.String,String){
return ("哆啦梦","100岁","狸猫")
}
print(test2())
//可以根据下标 打印返回值 类似数组
print(test2().0)
3.函数可以进行嵌套
func test3 (){
var y : Int = 0
funx add(){
y += 5
}
add ();
print(y)
}
test3()
4.返回值可以是一个函数
func lmyzTest4() -> ((Int,Int)->Int) {
func add (let i : Int , let j : Int)->Int{
return i + j;
}
return add
}
var lmyzAdd = lmyzTest4()
print(lmyzTest4()) 打印出来是 (Function)
print(lmyzAdd(2,4)) 打印出来是6
5.函数作为参数
var arr = [10, 20, 30]
func minNum(let num : Int) -> Int{
return num
}
// 将minNum作为参数传输 可以理解为为minNum函数起了一个别名叫myfunc 其实他的调用和minNum一致
func getMinNum(list :[Int], myfunc : (Int)-> Int) -> Int{
var y : Int = 0
for s in list {
let i = myfunc(s)
if (y == 0 || y > i) {
y = i
}
}
return y
}
var min = getMinNum(arr, myfunc: minNum)
print("获取最小值为:" + String(min))
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。