zoukankan      html  css  js  c++  java
  • 泛型类的简单的使用


    where表示泛型约束,表示泛型类型中的参数只能是car类型,IEnumerable是一个接口,一个集合要支持FOREAch遍历,
    必须实现IEnumerable接口

    复制代码 代码如下:


    public class Car
        {
            public string PetName;
            public int Speed;
            public Car(string name, int currentSpeed)
            {
                PetName = name;
                Speed = currentSpeed;
            }
            public Car() { }
        }
        public class CarCollection<T> : IEnumerable<T> where T : Car
        {
            private List<T> Tcars = new List<T>();
            //添加
            public void AddCar(T t)
            {
                Tcars.Add(t);
            }
            //获取其中一个
            public T GetCar(int pos)
            {
               return Tcars[pos];
            }
            public int Count()
            {
                return Tcars.Count;
            }
            #region IEnumerable<T> 成员
            public IEnumerator<T> GetEnumerator()
            {
                return Tcars.GetEnumerator();
            }
            #endregion
            #region IEnumerable 成员
            System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
            {
                return Tcars.GetEnumerator();
            }
            #endregion
        }

     

    复制代码 代码如下:


     private void button1_Click(object sender, EventArgs e)
            {
                Car car1 = new Car("one", 150);
                Car car2= new Car("two", 50);
                Car car3 = new Car("three", 150);
                CarCollection<Car> cars = new CarCollection<Car>();
                cars.AddCar(car1);
                cars.AddCar(car2);
                cars.AddCar(car3);
                MessageBox.Show(cars.Count().ToString());
                foreach (Car item in cars)
                {
                    MessageBox.Show(item.PetName+"--"+item.Speed.ToString());
                }
            }

  • 相关阅读:
    修改图片大小 分辨率
    Tools
    写log
    4Sum
    3Sum Closest
    避免调试时加载符号
    SDN期末作业——负载均衡
    SDN第五次上机作业
    个人作业——软件工程实践总结作业
    SDN第四次作业
  • 原文地址:https://www.cnblogs.com/wyBlog117/p/4552281.html
Copyright © 2011-2022 走看看