Swift -- 函数的使用(函数作为参数、返回值、嵌套函数)

前端之家收集整理的这篇文章主要介绍了Swift -- 函数的使用(函数作为参数、返回值、嵌套函数)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

// 函数作为返回值@H_502_3@func addTen(x: Int) -> (Int -> Int){@H_502_3@ func getNum(num2: Int) -> Int{@H_502_3@ return num2 + x@H_502_3@ }@H_502_3@ return getNum@H_502_3@}@H_502_3@var x = addTen(10)@H_502_3@print(x(20))

// 函数作为参数

func hasAnyMatches(list: [Int],condition: Int -> Bool) -> Bool{@H_502_3@ for item in list{@H_502_3@ if condition(item){@H_502_3@ return true@H_502_3@ }@H_502_3@ }@H_502_3@ return false@H_502_3@}@H_502_3@func lessThanTen(number: Int) -> Bool{@H_502_3@ return number < 10@H_502_3@}@H_502_3@var numbers = [20,19,7,12]@H_502_3@hasAnyMatches(numbers,condition: lessThanTen)

// 返回Tuple(元组)的函数@H_502_3@

func getTuple(arr: [Int]) -> (max: Int,min: Int,avg: Float,sum: Int)?{@H_502_3@ if arr.count == 0{@H_502_3@ return nil@H_502_3@ }@H_502_3@ var max: Int = arr[0]@H_502_3@ var min: Int = arr[0]@H_502_3@ var avg: Float = 0@H_502_3@ var sum: Int = arr[0]@H_502_3@ var index = 0@H_502_3@ for item in arr{@H_502_3@ index++@H_502_3@ if item > max{@H_502_3@ max = item@H_502_3@ }@H_502_3@ if item < min{@H_502_3@ min = item@H_502_3@ }@H_502_3@ sum += item@H_502_3@ }@H_502_3@ avg = Float(sum / index);@H_502_3@ return (max,min,avg,sum)@H_502_3@}@H_502_3@var arr = [9,11,3,-5,-13,99,30]@H_502_3@if let result = getTuple(arr){@H_502_3@ print("max: \(result.max),min: \(result.min),avg: \(result.avg),sum: \(result.sum)")@H_502_3@}

// 可变参数func sum(nums: Int...) -> Int{ var sum = 0; for item in nums{ sum += item } return sum}var x = sum()var y = sum(9,10)var z = sum(1,5,9)// 函数嵌套func fifteen() -> Int{ var x = 10 func addFive(){ x += 5 } addFive() return x}var a = fifteen()

猜你在找的Swift相关文章