c#自定义集合类
2016-07-21 11:22
309 查看
在System.Collections 命名空间下,常用的集合类中,这两个类不属于集合,而是作为自定义集合类的基类。
内置的集合并不能满足所有的数据集合处理,c#为用户自定义集合提供条件。这两个基类如下:
CollectionBase:为强类型集合提供abstract 基类
DictionaryBase:为键/值对的强类型集合提供abstract基类。
集合类有键值对的字典集合和一般集合,这两个基类一个作为非字典集合的基类,一个作为字典集合的基类。
下面以集合CollectionBase作为基类:
内置的集合并不能满足所有的数据集合处理,c#为用户自定义集合提供条件。这两个基类如下:
CollectionBase:为强类型集合提供abstract 基类
DictionaryBase:为键/值对的强类型集合提供abstract基类。
集合类有键值对的字典集合和一般集合,这两个基类一个作为非字典集合的基类,一个作为字典集合的基类。
下面以集合CollectionBase作为基类:
class Program { static void Main(string[] args) { Food food1 = new Food("苹果", 2.0); Food food2 = new Food("香蕉", 3.0); Food food3 = new Food("橘子", 4.0); Food food4 = new Food("西红柿", 5.0); FoodList foodlist = new FoodList(); foodlist.Add(food1); foodlist.Add(food2); foodlist.Add(food3); foodlist.Add(food4); for (int i = 0; i < foodlist.Count; i++) { Console.WriteLine("名称:{0} 价格:{1}",foodlist.GetItem(i).fname,foodlist.GetItem(i).fprice); } Console.WriteLine("删除index=1的元素后:"); foodlist.RemoveAt(1); for (int i = 0; i < foodlist.Count; i++) { Console.WriteLine("名称:{0} 价格:{1}", foodlist.GetItem(i).fname, foodlist.GetItem(i).fprice); } } } public class Food { public string fname; public double fprice; public Food() { } public Food(string name, double price) { fname = name; fprice = price; } public string fnames { get { return fname;} set { fname = value; } } public double fprices { get { return fprice; } set{fprice=value;} } } public class FoodList : CollectionBase { public virtual int Add(Food food)//重写父类的添加方法 { return InnerList.Add(food); } public new void RemoveAt(int index)//父类中该方法不允许重写,使用new关键字重写 { InnerList.RemoveAt(index); } public Food GetItem(int index) //根据索引获得类对象 { return (Food)List[index]; } }
相关文章推荐
- c#调用COM组件
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- Ruby中的集合编写指南
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析