swift3新路程(7)函数的嵌套、作为返回值和作为函数的参数

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

函数是可以嵌套的

当我们写一个比较长的函数的时候,我们可以使用函数嵌套的形式,将内部的代码抽取为一个嵌套的函数,这样看起来更加具有调理性

  1. func sumOneTwo()->Int {
  2. var sum = 0
  3. func sumFunc(){
  4. sum = 1 + 2
  5. }
  6. sumFunc()
  7. return sum
  8. }
  9. print(sumOneTwo())
函数sumFunc就是嵌套在sumOneTwo函数

输出

3


函数作为返回值

  1. func threeTimes() -> ((Int)->Void) {
  2. func times(num:Int){
  3. print(num*3)
  4. }
  5. return times
  6. }
  7. let times = threeTimes()
  8. times(10)
输出

30


作为函数的参数

  1. func chose(numbers:[Int],condation:(Int)->Bool)->[Int]{
  2. var result = [Int]()
  3. for number in numbers {
  4. if condation(number) {
  5. result.append(number)
  6. }
  7. }
  8. return result
  9. }
  10. func biggerThanTen(number:Int)->Bool {
  11. if number > 10 {
  12. return true
  13. }
  14. return false
  15. }
  16. var numbers = [11,40,4,9,12]
  17.  
  18. print(chose(numbers: numbers,condation: biggerThanTen))
输出

[11,12]

猜你在找的Swift相关文章