iOS激情詳解之Swift 三

2021-07-06 02:48:19 字數 2114 閱讀 1189

// 函式

// 語法格式

//func name (引數) -> 返回值

// 無參,無返回值

func hehe1()

func hehe2() -> void

// 函式呼叫

hehe1()

// 有參

// 關於內部引數名

// 2,只在函式作用域內部使用的引數名

func hehe3 (name1: string , name2:string)

// 除了第乙個引數,後面的引數在呼叫時會自動生成乙個與內部引數名相同的外部引數名

// 原則上,第乙個引數的外部引數名應該寫在函式名的末尾

hehe3("李雲飛", name2: "李永樂")

func hehe4name (xingming1 name1: string ,xingming2 name2:string)

// 外部引數名的新增的規則,在內部引數名前面宣告中間用空格隔開

// 只是增加**的可讀性

hehe4name(xingming1:"李雲飛", xingming2:"李永樂")

// 使用佔位符 _ 省略掉自動生成的外部引數名

func hehe5 (name1: string , _ name2:string)

hehe5("李雲飛","李雲飛")

// 可以為引數賦初始值 呼叫時傳參則更改,不傳參 使用初始值

func hehe6(name: string = "李雲飛" , name2:string = "李雲飛")

// hehe6()

hehe6(name2:"hehe")

// *************關於引數 到此結束

// 有返回值情況

// 返回值直接給型別

func gaga() -> string

gaga()

var str = "gagagagagagaga"

func yy (name:string ) -> (int,int)

}return (num1,num2)

}yy(str).0

yy(str).1

// 不確定引數個數 引數個數可變

func count2 (numbers:int...) ->int

return sum

}count2(1,2,3,4,5,6)

// 引數在函式體內預設是不可變的

func count3 (var a:int, b:int) -> int

var c = 22

c = count3(c, b: 0)

c// inout修飾引數 將外部變數的位址傳進來,從而改變外部變數的值

func changevalue (inout a: int)

changevalue(&c)

c

// 函式巢狀:函式作用域中定義了另乙個函式,內層函式的作用域可以使用外層函式的引數

func hellolanou(var num: int)

hello23()

num}hellolanou(10)

// 函式的返回值是巢狀的函式

// 函式型別 引數int 返回值為string

func hellolanou2() -> ((int) -> string)

return hanshu

}hellolanou2()

let hanshu = hellolanou2()

let i = hanshu(1)

// 宣告乙個函式,實現功能:傳入"+"-"*"/"的字串,返回對應得運算的函式"+"---返回int + int = int

// 引數string 返回值是int的函式

// 函式返回值是函式 可以用函式巢狀的形式實現 但是並不是必須使用巢狀實現

func yunsuan(str:string) -> ((int,int) ->int )

}return all

}let fuhao1 = yunsuan("+")

let sum1 = fuhao1(1,2)

iOS激情詳解之Swift 一

import uikit var str hello,playground 變數宣告規則 var 可變 let 不可變 var let 變數名 值 var str0 aaac str0 bdn str0 2 型別推斷 根據給出的值,對變數進行型別的推斷和確定 基本資料型別 var c 10 var ...

iOS激情詳解之Swift 二

陣列 陣列 陣列中只能儲存相同型別的資料 var arr1 1,2,3 自動推斷 int 型別的陣列 var arr2 1 2 3 string var arr3 1,2 3 陣列指定型別 1,語法 int var arr4 int 1,2,3 2,語法 arrayvar arr5 array 1 ...

iOS激情詳解之json解析

宣告老師的一些屬性 import inte ce teachermodel nsobject property nonatomic,retain nsstring name property nonatomic,retain nsstring property nonatomic,retain ns...