Csharp/C#教程:c#自定义泛型类的实现分享

上述就是C#学习教程:c#自定义泛型类的实现分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)! 闲来无事,自己研究了泛型类的简单的使用,
where表示泛型约束,表示泛型类型中的参数只能是car类型,IEnumerable是一个接口,一个集合要支持FOREAch遍历,
必须实现IEnumerable接口
代码如下:
publicclassCar
   {
       publicstringPetName;
       publicintSpeed;
       publicCar(stringname,intcurrentSpeed)
       {
           PetName=name;
           Speed=currentSpeed;
       }
       publicCar(){}
   }
   publicclassCarCollection<T>:IEnumerable<T>whereT:Car
   {
       privateList<T>Tcars=newList<T>();
       //添加
       publicvoidAddCar(Tt)
       {
           Tcars.Add(t);
       }
       //获取其中一个
       publicTGetCar(intpos)
       {
          returnTcars[pos];
       }
       publicintCount()
       {
           returnTcars.Count;
       }
       #regionIEnumerable<T>成员
       publicIEnumerator<T>GetEnumerator()
       {
           returnTcars.GetEnumerator();
       }
       #endregion
       #regionIEnumerable成员
       System.Collections.IEnumeratorSystem.Collections.IEnumerable.GetEnumerator()
       {
           returnTcars.GetEnumerator();
       }
       #endregion
   }

代码如下:
 privatevoidbutton1_Click(objectsender,EventArgse)
       {
           Carcar1=newCar(“one”,150);
           Carcar2=newCar(“two”,50);
           Carcar3=newCar(“three”,150);
           CarCollection<Car>cars=newCarCollection<Car>();
           cars.AddCar(car1);
           cars.AddCar(car2);
           cars.AddCar(car3);
           MessageBox.Show(cars.Count().ToString());
           foreach(Caritemincars)
           {
               MessageBox.Show(item.PetName+”–“+item.Speed.ToString());
   & nbsp;       }
       }
您可能感兴趣的文章:关于C#泛型列表List<T>的基本用法

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/904815.html

(0)
上一篇 2021年10月22日
下一篇 2021年10月22日

精彩推荐