C 泛型總結

2021-07-09 23:09:28 字數 811 閱讀 9664

泛型,比較廣泛的資料型別。泛型是資料型別的一種通用表示形式,它可以表示任何一種資料型別

泛型的定義和引用

泛型是具有佔位符(型別引數)的類、結構、介面、和方法。它與普通類的區別是泛型多了乙個或多個表示型別的佔位符,這些佔位符永尖括號括起來。

public class myclass //定義屬性myprop

public void print()

myclassmyclass = new myclass();

myclass.myprop = 15;

myclass.print();

可空型別的泛型

nullable

nullable等效為 int?

可空型別的泛型表示可被賦值為null值的值型別變數,但是要注意,由於引用型別已支援null值,因此不能用該型別建立基於引用型別的null型別。

由於普通型別的值型別資料無法和null值進行比較,要判斷可空型別的變數是否為null,可以利用為該泛型變數提供的hasvalue屬性,如果次變數的值不是null,則hasvalue屬性返回true,否則返回false

if(x.hasvalue){

j = x.value;

利用為可空型別變數提供的getvalueordefault方法。可以返回該資料型別的值或預設值,例如

int j = x.getvalueordefault();

使用「??」運算符號

int ? x = null;

int y = x ?? -1

當x的值為null時,就將預設值-1賦值給y

C 泛型演算法總結

accumulate b,e,t 累和 基礎和為t 注意t的型別必須和序列中元素型別相同,如double序列後面的t就必須是0.0,如果是0就會把序列中的數當成int進行求和 count b,e,t 計數,查詢 b,e 中t出現的次數 equal b1,e1,b2 確定是否相同,b1,e1 為序列1...

C 泛型演算法總結

accumulate b,e,t 累和 基礎和為t 注意t的型別必須和序列中元素型別相同,如double序列後面的t就必須是0.0,如果是0就會把序列中的數當成int進行求和 count b,e,t 計數,查詢 b,e 中t出現的次數 equal b1,e1,b2 確定是否相同,b1,e1 為序列1...

C 中的泛型總結

net中的泛型功能相當強大,它對實現型別安全和 重用都有很大的作用。現在將泛型的知識整理如下 1 概念 泛型是將型別作為引數傳遞給類 方法 委託 2 泛型的型別約束 是對引數型別進行約束限制,在需要使用引數型別的特定功能時,約束是必須的。如在泛型類中,需要使用引數類的乙個方法時,則必須指定這個引數類...