日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Swift函数

發布時間:2025/4/14 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Swift函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

函數

函數的介紹

  • 函數相當于OC中的方法
  • 函數的格式如下
func 函數名(參數列表) -> 返回值類型 {代碼塊return 返回值 }
  • func是關鍵字,多個參數列表之間可以用逗號(,)分隔,也可以沒有參數
  • 使用箭頭“->”指向返回值類型
  • 如果函數沒有返回值,返回值為Void.并且“-> 返回值類型”部分可以省略

常見的函數類型

// 1.沒有參數,沒用返回值 func about() -> Void { print("iphone6s plus") } // 調用函數 about() // 簡單寫法 // 如果沒用返回值,Void可以寫成() func about1() -> () { print("iphone6s plus") } // 如果沒有返回值,后面的內容可以都不寫 func about2() { print("iphone6s plus") } about2() // 2.有參數,沒用返回值 func callPhone(phoneNum : String) { print("打電話給\(phoneNum)") } callPhone("+86 110") // 3.沒用參數,有返回值 func readMessage() -> String { return "吃飯了嗎?" } var str = readMessage() print(str) // 4.有參數,有返回值 func sum(num1 : Int, num2 : Int) -> Int { return num1 + num2 } var result = sum(20, num2: 30) print(result)

函數的使用注意

  • 注意一: 外部參數和內部參數
    • 在函數內部可以看到的參數,就是內部參數
    • 在函數外面可以看到的參數,就是外部參數
    • 默認情況下,從第二個參數開始,參數名稱既是內部參數也是外部參數
    • 如果第一個參數也想要有外部參數,可以設置標簽:在變量名前加標簽即可
    • 如果不想要外部參數,可以在參數名稱前加_
// num1和a是外部參數的名稱 func ride(num1 num1 : Int, a num2 : Int, b num3 : Int) -> Int { return num1 * num2 * num3 } var result1 = ride(num1: 20, a: 4, b: 5) // 方法的重載:方法名稱相同,但是參數不同,可以稱之為方法的重載(了解) func ride(num1: Int, _ num2 :Int) -> Int { return num1 * num2 } var result2 = ride(20, 20)
  • 注意二: 默認參數
    • 某些情況,如果沒有傳入具體的參數,可以使用默認參數
func makecoffee(type :String = "卡布奇諾") -> String { return "制作一杯\(type)咖啡。" } let coffee1 = makecoffee("拿鐵") let coffee2 = makecoffee()
  • 注意三: 可變參數
    • swift中函數的參數個數可以變化,它可以接受不確定數量的輸入類型參數
    • 它們必須具有相同的類型
    • 我們可以通過在參數類型名后面加入(...)的方式來指示這是可變參數
func sum(numbers:Double...) -> Double { var total: Double = 0 for number in numbers { total += number } return total } sum(100.0, 20, 30) sum(30, 80)
  • 注意四: 引用類型(指針的傳遞)
    • 默認情況下,函數的參數是值傳遞.如果想改變外面的變量,則需要傳遞變量的地址
    • 必須是變量,因為需要在內部改變其值
    • Swift提供的inout關鍵字就可以實現
    • 對比下列兩個函數
// 函數一:值傳遞 func swap(var a : Int, var b : Int) { let temp = a; a = b; b = temp print("a:\(a), b:\(b)") } var a = 10 var b = 20 swap(a, b: b) print("a:\(a), b:\(b)") // 函數二:指針的傳遞 func swap1(inout a : Int, inout b : Int) { let temp = a a = b b = temp print("a:\(a), b:\(b)") } swap1(&a, b: &b) print("a:\(a), b:\(b)")
  • 函數的嵌套使用
    • swift中函數可以嵌套使用
    • 即函數中包含函數,但是不推薦該寫法
// 函數的嵌套 let value = 55 func test() { func demo() { print("demo \(value)") } print("test") demo() } demo() // 錯誤 test() // 執行函數會先打印'test',再打印'demo'

轉載于:https://www.cnblogs.com/xufengyuan/p/7266172.html

總結

以上是生活随笔為你收集整理的Swift函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。