使用集合组织相关数据

1ArraysList

ArrayList非常类似于数组,也有人称之为数组列表,ArrayList可以动态维护,我们知道数组的容量是固定的,而ArrayList的容量可以根据需要来自动扩充。

它的索引会根据程序的扩展而重新进行分配和调整。AraayList提供了一系列的方法对其中的元素进行访问,增加,删除操作。

★提示:和数组类似ArrayList中存储的数据称为元素:ArrayList可以保存的元素数就是ArrayList的容量,其容量的默认值为0,可以通过一系列方法,对其中的元素进行操作,

ArrayList中的元素,索引从0开始。

定义一个ArrayList需要注意的是,ArrayList是动态可维护的,,因此定义时可以指定容量或者不指定容量,

using  System.Collection;
//创建容量为0的ArrayList对象
ArrayList Student =new ArrayList();
//创建一个容量为5的ArrayList对象
ArrayList  teacher=new ArrayList();

ArrayList 的方法和属性

属性名称                              说明

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

返回值类型                               方法名称                                   说明

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

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

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

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

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

返回值:int 是一个整型,用于返回所添加的元素的索引

参数:如果向ArrayList 中添加的元素是值类型的,这些元素就会装箱处理转换为Object引用类型,然后保存。

因此,ArrayList所有元素都是引用类型

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

需要注意的是由于给那些ArrayList 添加的元素都会被转换为,Object型,所以已在访问这些元素的时候,都会被转换成Object,所以在访问这些元素的时候,必须转换为原来的类型。

如示例2:SE对象

SE  engineer =(SE)engineers[0];
MessageBox.Show(engineer SayHi());

3.3

3.遍历数组中的元素:

通过循环的方式来将数组中的元素取出来,这种方式称之为遍历数组。以数组的长度作为循环次数,将循环变量作为数组的索引逐个取出元素。示例:

static  void Main(string[] args)
{
int[] array =new int[]{0,1,2,3,4,5};
for(int i=0;i<array.Length;i++)
  {
Console.WriteLine(array[i]);
    }
}

4.删除元素ArryList中的元素Remove()方法和RemoveAt()方法只能删除一个元素。在程序中我们经常遇到删除所有元素的需求。

这时候使用Remove()和RemoveAt()就显得繁琐了。Clear()方法可以删除集合中的所有元素。

3.1.2Hashtable

属性名称                                                              说明

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

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

Values                                                                  获取包含在Hashtable中值的集合

返回值类型                                方法名称                                       说明

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

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

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

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

Hashtable元素的Add方法有两个参数,一个表示键,一个表示键所对应的值。

2.获取Hashtable的元素

和ArrayList 不同访问,Hashtable元素时可以直接通过键来获取具体值,同样由于值的类型是Object,所以当得到一个值时,也要通过类型转换得到的对象。

3.删除Hashtable的元素

通过键(Keys),使用Remove()方法就可以删除的元素。

3.2.2泛型集合List<T>

定义一个List<T>泛型集合的方法如下:

语法:

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

"<T>"中的T表示可以对集合中的元素类型进行约束,T表示集合中管理的元素类型。

  1. List<T>对保存的元素类型做约束,ArrayList可以保存任何类型的元素
  2. list<T>保存值类型元素不会进行装箱拆箱操作而ArrayList会

 

泛型集合Dictionnary<K,V>

泛型集合Dictionary可以代替上面的HashTable

定义一个泛型集合Dictionary<K,V>的语法

Dictionary<K,V>  集合名称=new   Dictionary<K,V>();

在”<K,V>”中K表示集合中Key的类型,V表示Value的类型,他们的含义和List<K,V>是相同的

泛型类

在集合中使用泛型只是泛型多种应用的一种,在类、方法等方面已有泛型的应用

定义一个泛型类的语法如下:

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

T指类型参数,代表具体的数据类型,可以是值类型也可以是引用类型

原文地址:https://www.cnblogs.com/864466244qq/p/8184436.html