1.swift 中的函式
///print(sum(x: 10, y: 20))函式的定義
//////
- parameters:
///- x: 形參
///- y: 形參
///- returns: 返回值
func sum(x: int, y: int) ->int
/*print(sum1(num1: 10, num2: 20))外部引數就是在形參前面加了乙個字
外部引數不會影響函式內部的細節
外部引數會讓外部呼叫看起來更加直觀
外部引數如果使用了'_',在外部呼叫函式時,會忽略形參的名字
"_" 就是可以忽略任意不感興趣的內容
*/func sum1(num1 x: int, num2 y:int) ->int
func sum2(_ x: int, _ y:int) ->intprint(sum3())
設定預設值的函式
//print(sum3(x: 10, y: 20))預設值 func sum3(x: int = 1, y: int = 2) ->int
這裡比較靈活
print(sum3(x: 10))
print(sum3(y: 20))
無返回值的函式
func demo1()demo1()func demo2() ->()
func demo3() ->void
demo2()
demo3()
2.閉包
//1.閉包,最簡單的閉包
//n 如果沒有引數,沒有返回值 可以省略 連 in 都一起省略
//option + click
let b1 =
b1()
//帶引數的閉包
//閉包中,引數,返回值 實現的**都是寫在{}中
//需要使用乙個關鍵字 「in」 分隔定義和實現
// let b2 =
b2(100)
//帶引數 帶會返回值的閉包
let b3 =
print(b3(
10))
需要注意的是,
// 如果函式的最後乙個引數是閉包函式引數可以提前結束,最後乙個引數直接使用{}包裝閉包的**
3.swift 解決迴圈引用的辦法
1.仿照oc 解決
//弱引用的物件 又一次執行 nil的機會
weak var weakself =self
loaddata
}
//[weak self] 和 __weak typeof(self) 作用類似 -> 物件被**是 記憶體位址會自動指向nil 更加安全 推薦使用這種方式
func methodinswift1()
}
//[unowned self] 和 __unsafe__retained作用類似 -> 物件被**是 記憶體位址不會自動指向nil 會造成野指標訪問
func methodinswift2()
}
SWIFT基礎語法(二)
class shape 通過在類名後新增圓括號來例項化,使用.來訪問例項屬性和方法 var myshape shape 在類名後新增圓括號來例項化 shape.ofnumber 34print myshape.desciription 這個版本的shape類遺漏了乙個重要的事情 用於在建立例項時設定...
Swift 基礎語法 二
這次的文章主要講述具有代表性的運算子邏輯,以及資料型別轉換的簡單舉例。條件表示式 邏輯運算子 條件表示式 注 邏輯表示式返回的值是 bool 布林值 可選型別其實是乙個美劇型別,裡面包含了 none和 some兩種型別。其實所謂的 nil就是 optional.none,非 nil就是 option...
swift的基礎語法 二
let score 87 if score 60 else if score 70 else if score 80 else if score 90 else 複製 var a 10 var b 50 var result a b a b println result 複製 var age 18 ...