VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • C#教程之使用集合组织相关数据

 ArrayList非常类似于数组,也有人称它为数组列表,ArrayList可以动态维护

 提示:

和数组相似,ArrayList中存储的数据称为元素,ArrayList可以保存的元素数就是ArrayList容量,其默认初始容量为0,可以通过索引访问ArrayList中的元素,索引从0开始

ArrayList属于System.Collections命名空间,是集合的一种

using System.Collection

ArrayList arr=new ArrayList();

                            ArrayList常用方法和属性

   属性名称                                        说明

   Count                                    获取ArrayList中实际包含的元素数

返回值类型              方法名称                      说明

int                        Add(Object value)        将对象添加到ArrayList的结尾处

void                      RemoveAt(int index)     移除ArrayList指定索引处的元素

void                      Remove(Object value)   从ArrayList中移除特定的对象

void                       Clear()                        从ArrayList中移除所有的元素

给ArrayList添加数据

1.ArrayList通过Add方法添加元素

返回值 :值是一个int类型,用于返回的元素的索引

参数:如果向ArrayList中添加的元素是值类型,这些元素就都会装箱处理转化为Object引用类型,然后保存,因此ArrayList中所有的元素都是对象的引用

存取ArrayList中的单个元素

ArrayList获取一个元素的方法和数组一样,也是通过索引(index)来访问,ArrayList中第一个元素的索引是0

遍历ArrayList中的元素

int[] array=new int[]{1,2,3,4,5};

for(int i=0;i<array.length;i++){

Console.WriteLine(array[i]);
}

删除ArrayList中的元素

ArrayList engineers=new ArrayList();

engineers.RemoveAt(0);

enginneers.Remove(ema);

MessageBox.Show(string.Format("部门共包括{0}个工程师",engineers.Count.Tostring()));

SE leave=(SE)engineers[0];

MessageBos.Show(leave.SayHi());

RemoveAt()和Remove()方法只能删除一个元素

Hashtable

             Hashtable的常用方法和属性

   属性名称                                     说明

 Count                                    获取包含在Hashtable中键/值对的数目

 Keys                                      获取包含在Hashtable中键的集合

 Values                                    获取包含Hashtable中值的集合

 返回值类型                   方法名称                                                 说明

 void                           Add(Object key,Object value)                  将带有指定的键和值的元素添加到Hashtable中

 void                           Remove(Object key)                               从Hashtable中移除带有特定键的元素

 void                           Clear()                                                   从Hashtable中移除所有的元素

Hashtable通过Add()方法添加元素

Hashtable的Add()方法有二个参数,一个表示键,一个不是键所对应的值

遍历Hashtable中的元素

foreach(Oject obj in engineers.Keys){
 Console.WirteLine((string)obj);
}

foreach(Object obj in engineers.Values){

SE se=(SE)obj;
Console.WriteLine(se.Name);
}

泛型和泛型集合

泛型

泛型引入了一个概念:类型参数。通过使用类型参数(T)减少了运行时强制转换或装箱操作的风险,通过泛型可以最大限度的重用代码,保护类型的安全及提高性能,他的最常见应用就是创建集合类,可以约束集合类中的元素类型。比较典型的泛型集合是List<T>和Dictionary<>;

泛型集合List<T>

语法

List<T>对象名=new List<T>();

List<T>与ArrayList的区别

异同点                        List<T>                              ArrayList

不同点                     对所保存元素做类型约束            可以增加任何类型

                              添加/读取值类型元素无须拆箱,装箱       添加/读取值类型元素需要拆箱,装箱

相同点                    通过索引访问集合中的元素

                             添加元素方法相同

                             删除元素方法相同

泛型集合Dictionary<K,V>

语法

Dictionary<K,V>对象名=new Dictionary<K,V>();

例如:

Dictionary<string,SE>engineers=new Dictionary<string,SE>();

                                            Dictionary和Hashtable的对比

   异同点                      Dictionary<K,V>                                   Hashtable

 不同点                        对所保存元素做类型约束                            可以增加任何类型

                                  添加/读取值类型元素无须拆箱,装箱            添加/读取值类型元素需要拆箱,装箱

 相同点                        通过Key获取Value

                                  添加元素方法相同

                                  删除元素方法相同

                                  遍历方法相同

Dictionary还可以采用下面的方式

foreach(KeyValuePair<string,SE> en in engineers){
 Console.WriteLine(en.Key);

Console.WriteLine(en.Value.Name);
}

泛型类

语法

public class 类名<T>{
  //。。。。。。。。
}


相关教程