泛型的初運用

Crazy巴旦木發表於2018-08-08

泛型函式 1.單一佔位符泛型函式。

例如 兩個數值進行處理,如果我們寫成處理兩個整數的話,那麼再用這個方法來處理兩個字串就不能用了,這時候泛型就派上用場了。用泛型來定義一個處理兩個變數的函式,該佔位符表示傳入的引數是什麼型別,那麼泛型就是什麼型別的,如果是單一的泛型的話,兩個變數必須是同一型別的。

例如:

func swap(inout number1:MyCustomType,inout number2:MyCustomType){

let temp = number1

number1 = number2

number2 = temp

}

2.多個佔位符的泛型函式。

就是允許在泛型佔位符中新增多個泛型型別引數。兩個型別的引數,是因為引數使用的型別是不同的。

fun conect<FirstType,SecondType>(number1:FirstType,number2:SecondType) ->String{

let temp = "(number1)"+"(number2)"

}

泛型類 在類中使用泛型,就是在宣告類的時候使用泛型佔位符表示一個要處理的泛型即可。

泛型類的定義

class MyTestClass{

var values = MyCustomType

func display(){

for var i =0;i<self.values.count; i++{

print(values[i])

}

}

}

泛型類的使用

let myClass:MyTestClass = MyTestClass()

myClass.values = ["aaa","bbb","ccc"];

myClass.display()

其實泛型的用處還很多,還可以用到結構體,協議,延展等,都差不多。

相關文章