如鹏网.Net高级技术5.泛型集合及键值对
泛型集合和鍵值對在C#中比較常用,
該段課件中通過案例講解泛型集合的使用方式.
如何自己定義泛型集合,泛型方法,泛型接口及使用
自定義的泛型如何通過where進行約束.
泛型中常用的幾個泛型方法。
-------------------------------------------------
泛型集合
List<T>,
Dictionary<K,V> :鍵不能重復,值可以重復
List<T>,Dictionary<K,V>
案例:
合并兩個集合中的重復項 案例:隨機生成10個1-100之間的數放到List中,要求這10個數不能重復,并且都是偶數(添加10次,可能循環很多次。)
案例:
把分揀奇偶數的程序用泛型實現。List<int> 把123轉換為:壹貳叁。
Dictionary<char,char> 計算字符串中每種字母出現的次數“Welcome ,to Chinaworld”,不區分大小寫。
-------------------------------------------------
自定義泛型
泛型的目的:還是代碼重用。
T:一般叫做“類型參數”,把數據類型作為參數傳遞。
一般用T類表示或者以大寫T開頭的
比如:TKey,TValue、TOutput、TResult…
泛型類、泛型接口、泛型方法(泛型方法中的類型推斷)、泛型委托(*)
------------------------------------------------
課后練習:
練習1:英漢翻譯。可以使用WinForm做。
練習2:編寫一個函數進行日期轉換,將輸入的中文日期轉換為阿拉伯數字日期,比如:二零一二年十二月月二十一日要轉換為2012-12-21。(處理“十”的問題:1.*月十日;2.*月十三日;3.*月二十三日;4.*月三十日;)4中情況對“十”的不同翻譯。1→10;2→1;3→不翻譯;4→0【年部分不可能出現’十’,都出現在了月與日部分。】
測試數據:二零一二年十二月二十一日(2012年12月21日)、二零零九年七月九日、二零一零年十月二十四日、二零一零年十月二十日
------------------------------------------------
泛型約束:
使用where關鍵字進行類型約束
約束多個參數:可以對多個參數應用約束,并對一個參數應用多個約束,如下:
C#:
class Base{}
class Test<T,U>
where U:struct
where T:Base,new(){}
如鵬網:http://www.rupeng.com
總結
以上是生活随笔為你收集整理的如鹏网.Net高级技术5.泛型集合及键值对的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 口罩简笔画(可以画在口罩上的创意画)
- 下一篇: 基金亏了死守会回本吗(买基金亏损后死扛,