在上面的swapTwoValues例子中,占位類型T是一種類型參數(shù)的示例。類型參數(shù)指定并命名為一個(gè)占位類型,并且緊隨在函數(shù)名后面,使用一對(duì)尖括號(hào)括起來(如<T>)。
一旦一個(gè)類型參數(shù)被指定,那么其可以被使用來定義一個(gè)函數(shù)的參數(shù)類型(如swapTwoValues函數(shù)中的參數(shù)a和b),或作為一個(gè)函數(shù)返回類型,或用作函數(shù)主體中的注釋類型。在這種情況下,被類型參數(shù)所代表的占位類型不管函數(shù)任何時(shí)候被調(diào)用,都會(huì)被實(shí)際類型所替換(在上面swapTwoValues例子中,當(dāng)函數(shù)第一次被調(diào)用時(shí),T被Int替換,第二次調(diào)用時(shí),被String替換。)。
你可支持多個(gè)類型參數(shù),命名在尖括號(hào)中,用逗號(hào)分開。