亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

《C#高級編程》之泛型--1創建泛型類

2019-11-17 02:44:33
字體:
來源:轉載
供稿:網友

《C#高級編程》之泛型--1創建泛型類

.NET自從2.0版本開始就支持泛型。

  • 非泛型鏈表

閑話休提,馬上來看下非泛型的簡化鏈表類,它可以包含任意類型的對象。

LinkedListNode.cs中:


在鏈表中,一個元素引用另一個元素,所以必須創建一個類,將其封裝在鏈表中,并引用下一個對象。

 1     public class LinkedListNode 2     { 3         public LinkedListNode(object value) 4         { 5             this.Value = value; 6         } 7  8         public object Value { get; PRivate set; } 9 10         public LinkedListNode Next { get; internal set; }11         public LinkedListNode Prev { get; internal set; }12     }

LinkedListNode.cs中:


LinkedList類包含LinkedListNode類型的First,與Last屬性,它們分別標志了鏈表的頭尾。通過實現GetEnumerator()方法,可以用foreach語句遍歷鏈表。

 1     public class LinkedList : IEnumerable 2     { 3         public LinkedListNode First { get; private set; } 4         public LinkedListNode Last { get; private set; } 5  6         public LinkedListNode AddLast(object node) 7         { 8             var newNode = new LinkedListNode(node); 9             if (First == null)10             {11                 First = newNode;12                 Last = First;13             }14             else15             {16                 Last.Next = newNode;17                 Last = newNode;18             }19             return newNode;20         }21 22         public IEnumerator GetEnumerator()23         {24             LinkedListNode current = First;25             while (current != null)26             {27                 yield return current.Value;28                 current = current.Next;29             }30         }

Program.cs中:


1             var list1 = new LinkedList();2             list1.AddLast(2);3             list1.AddLast(4);4             list1.AddLast("6");5 6             foreach (int i in list1)7             {8                 Console.WriteLine(i);9             }

此時,會出現一個運行異常,因為把鏈表中第3個元素轉換成整形時會出現異常。

  • 泛型鏈表

為了避免這種情況,下面創建泛型的鏈表。

LinkedListNode.cs中:


LinkedListNode類用一個泛型類型T聲明。屬性Value的類型是The,而不是object.

    public class LinkedListNode<T>   {      public LinkedListNode(T value)      {         this.Value = value;      }         public T Value { get; private set; }      public LinkedListNode<T> Next { get; internal set; }      public LinkedListNode<T> Prev { get; internal set; }   }

LinkedList.cs中:


也把LinkedList定義成泛型類。

 1     public class LinkedList<T> : IEnumerable<T> 2     { 3         public LinkedListNode<T> First { get; private set; } 4         public LinkedListNode<T> Last { get; private set; } 5  6         public LinkedListNode<T> AddLast(T node) 7         { 8             var newNode = new LinkedListNode<T>(node); 9             if (First == null)10             {11                 First = newNode;12                 Last = First;13             }14             else15             {16                 Last.Next = newNode;17                 Last = newNode;18             }19             return newNode;20         }21 22         public IEnumerator<T> GetEnumerator()23         {24             LinkedListNode<T> current = First;25 26             while (current != null)27             {28                 yield return current.Value;29                 current = current.Next;30             }31         }32 33         IEnumerator IEnumerable.GetEnumerator()34         {35             return GetEnumerator();36         }37     }

Program.cs中:


 1     class Program 2     { 3         static void Main() 4         { 5             var list2 = new LinkedList<int>(); 6             list2.AddLast(1); 7             list2.AddLast(3); 8             list2.AddLast(5); 9 10             foreach (int i in list2)11             {12                 Console.WriteLine(i);13             }14 15             var list3 = new LinkedList<string>();16             list3.AddLast("2");17             list3.AddLast("four");18             list3.AddLast(null);19 20             foreach (string s in list3)21             {22                 Console.WriteLine(s);23             }24             Console.Read();25 26         }

現在foreach是類型安全的了。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲网站视频福利| 久久亚洲国产精品| 国产日韩换脸av一区在线观看| 欧美在线一级va免费观看| 九九视频直播综合网| 色诱女教师一区二区三区| 亚洲欧美国产精品| 97色在线视频观看| 91在线观看免费高清完整版在线观看| 日韩成人中文字幕在线观看| 亚洲精品美女网站| 日韩免费电影在线观看| 亚洲国产精久久久久久| 97视频免费观看| 欧美日韩国产成人在线观看| 午夜精品99久久免费| 国产999视频| 欧美激情亚洲国产| 国产欧美日韩中文字幕在线| 亚洲综合小说区| 色偷偷av亚洲男人的天堂| 中文精品99久久国产香蕉| 91久久久久久久久| 日韩在线高清视频| 日韩av色在线| 亚洲欧美中文日韩在线| 亚洲另类欧美自拍| 国产精品mp4| 亚洲一区国产精品| 国产国语刺激对白av不卡| 久久亚洲电影天堂| 国产成人极品视频| 国产a∨精品一区二区三区不卡| 日韩中文字幕在线观看| 成人在线国产精品| 久久久成人精品视频| 亚洲免费视频在线观看| 亚洲在线视频观看| 亚洲在线免费观看| 亚洲电影免费观看| 国内外成人免费激情在线视频| 欧美一区二三区| 国产精品91久久| 国产精品吴梦梦| 日韩中文字幕视频在线观看| 国产午夜精品全部视频在线播放| 国产精品成人av性教育| 亚洲精品免费网站| 亚洲永久在线观看| 亚洲日韩欧美视频一区| 亚洲欧美精品伊人久久| 欧美性猛交99久久久久99按摩| 亚洲综合中文字幕68页| 成人网在线视频| 亚洲一区亚洲二区| 91精品国产自产在线观看永久| 日韩精品在线视频| 日韩av在线精品| 国产综合久久久久| 国产成人精品日本亚洲专区61| 97久久精品国产| 日本亚洲欧美三级| 欧美精品一二区| 91午夜理伦私人影院| 成人h猎奇视频网站| 日韩一区二区三区在线播放| 欧美老女人bb| 欧美制服第一页| 中文字幕久久亚洲| 国产精品成人免费电影| 一夜七次郎国产精品亚洲| 日韩在线视频网站| 国产精品99久久久久久久久久久久| 国产丝袜一区视频在线观看| 少妇高潮久久77777| 宅男66日本亚洲欧美视频| 超碰日本道色综合久久综合| 亚洲高清久久久久久| 久久艳片www.17c.com| 欧美日韩高清区| 在线日韩精品视频| 欧美裸体xxxx极品少妇软件| 欧美成人免费视频| 久久久久国产视频| 亚洲国产一区二区三区在线观看| 最新日韩中文字幕| 国产精品96久久久久久又黄又硬| 亚洲欧美在线免费观看| 国产成人精品免费久久久久| 欧美一区二区影院| 日韩欧美一区二区在线| 亚洲国产精品高清久久久| 最新国产精品亚洲| 欧美黑人一区二区三区| 国产欧美日韩中文| 91免费人成网站在线观看18| 成人女保姆的销魂服务| 国产欧美亚洲精品| 成人女保姆的销魂服务| 国产一区红桃视频| 欧美精品日韩三级| 亚洲国产另类 国产精品国产免费| 日本国产欧美一区二区三区| 国产成人aa精品一区在线播放| 韩国国内大量揄拍精品视频| 日韩精品久久久久| 久久久久久久国产精品| 国产精品igao视频| 久久久精品一区二区三区| 午夜精品在线视频| 97久久精品人人澡人人爽缅北| 97精品在线观看| 国产一区二区三区精品久久久| 亚洲国产精品电影| 久久久综合av| 日韩h在线观看| 欧美性猛交xxx| 久久国产天堂福利天堂| 成人女保姆的销魂服务| 日韩在线观看网站| 日韩高清电影好看的电视剧电影| 日韩经典一区二区三区| 欧美日韩国产一区二区| 欧美电影在线播放| 这里只有视频精品| 日韩成人av网址| 黑人巨大精品欧美一区二区免费| 97国产真实伦对白精彩视频8| 欧美精品video| 国产69精品久久久久久| 亚洲成人久久久| 欧美日韩高清在线观看| 91免费福利视频| 91wwwcom在线观看| 国产a∨精品一区二区三区不卡| 日韩精品在线观| 亚洲国产日韩欧美在线99| 欧美日本精品在线| 国产91在线高潮白浆在线观看| 国产精品第二页| 欧美日韩在线第一页| 日韩av资源在线播放| 久久婷婷国产麻豆91天堂| 亚洲一区二区三区在线视频| 国产在线观看一区二区三区| 7777kkkk成人观看| 亚洲国产精品视频在线观看| 一本一道久久a久久精品逆3p| 日韩中文有码在线视频| 欧美激情一级二级| 日韩乱码在线视频| 精品久久久一区二区| 色青青草原桃花久久综合| 日本一区二区不卡| 97精品视频在线观看| 91精品一区二区| 亚洲精品自产拍| 欧洲亚洲在线视频| 亚洲精品视频播放| 欧美成人自拍视频| 国产精品入口免费视| 91精品视频免费看| 狠狠色噜噜狠狠狠狠97| 久久全球大尺度高清视频|