List< T >泛型集合的基本使用
List 引用命名空间 using System.Collections.Generic;
创建一个泛型集合对象
// 创建泛型集合对象
List<int> list = new List<int>();
注意里面的类型一旦确定不能修改。
// 添加单个元素
list.Add(1);
list.Add(2);
list.Add(3);
// 添加集合的元素
list.AddRange(new int[] { 1, 2, 3, 4 });
// 移除指定的单个元素。
list.Remove(1);
// 移除指定的索引元素
list.RemoveAt(1);
// 根据索引移除移动范围内的元素
list.RemoveRange(0, 2);
// 升序排列
list.Sort();
// 集合中的元素顺序反转
list.Reverse();
// 将单个元素插入指定的索引下标处
list.Insert(1, 2);
// 将集合元素插入指定的索引下标处
list.InsertRange(0, new int[] { 1, 2, 3, 4 });
// 判断集合中是否包含某个指定的元素
bool b = list.Contains(1);
// List 泛型集合可以转换为数组
int[] i = list.ToArray();
// 将数组转集合
List<int> listInt = i.ToList();
List 方法:
- 1 . Add(value);
- 将对象添加到 ArrayList 结尾处。(添加单个元素)
- 2 . AddRange(IEnumerable< T > collection);
- 用于添加集合元素。
- 3 . Clear();
- 移除 ArrayList 集合中的所有元素。
- 4 . Remove(item);
- 移除指定的单个元素。
- 5 . RemoveAt(int index);
- 根据下标去移除元素。
- 6 . RemoveRange(int index,int count);
- 根据索引下标移除一定范围内的元素。
- 7 . Sort();
- 升序排列。
- 8 . Reverse();
- 集合中的元素顺序反转。
- 9 . Insert(int index, item);
- 将 item 元素插入指定的索引下标处。
- 10 . Contains(value);
- 判断是否包含某个指定的元素。
- 11 . ToArray();
- 将集合转换为数组。
- 12 . ToList();
- 将数组转为集合。
Dictionary< K,V >字典
命名空间 using System.Collections.Generic;
Dictionary 键值对集合.(字典)
该集合中的每个数据都是有两部分组成的,键(Key)和值(Value)。在键值对集合当中键必须是唯一的,而值是可以重复的。
// 创建一个键值对集合对象
Dictionary<string, string> dic = new Dictionary<string, string>();
// 添加
dic.Add("1", "一");
dic.Add("2", "二");
dic.Add("3", "三");
dic.Add("4", "四");
// 在键值对集合中,是根据键去找值。
// dic["1"] 根据键去查找相对应的值
Console.WriteLine(dic["1"]);
// Keys 获取键值对的集合键,Values 获取键值对的值
// 遍历集合的键
foreach (var item in dic.Keys)
{
Console.WriteLine("键是————:{0},值是————:{1}",item,dic[item]);
}
// 另一种遍历方式 KeyValuePair<k,v> 一对数据一对数据的遍历。
//类型必须要和你遍历的集合类型一致
foreach (KeyValuePair<string, string> item in dic)
{
Console.WriteLine("{0},{1}",item.Key,item.Value);
}
Console.WriteLine("-----------------------------------");
// *** 键值对集合当中,键必须是唯一的,而值可以重复
// 这样也可以添加数据,但是如果键在集合中已经存在,值会覆盖掉之前键所对应的值
dic["5"] = "五";
// 例如;
dic["1"] = "one";
foreach (var item in dic.Keys)
{
Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
}
Console.WriteLine("+++++++++++++++++++++++++++++++++++++++++++++++");
// 判断键值对当中是否包含某个键
if (!dic.ContainsKey("6"))
{
dic.Add("6", "六");
}
foreach (var item in dic.Keys)
{
Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
}
Console.WriteLine("---------------------------------------------");
//dic.Clear(); //移除集合中所有的元素
dic.Remove("1");
foreach (var item in dic.Keys)
{
Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
}
Console.Read();
- 1 . Add(K,V);
- 往集合中添加数据。K键,V值。
- 2 . ContainsKey(string key);
- 判断键值对当中是否包含某个键。
- 3 . Clear();
- 移除集合中所有的元素。
- 4 . Remove(string key);
- 移除所指定的键的值。
- 5 . 集合名[键名];
- 取出指定键名所对应的数据。
在键值对集合中,我们是根据键去找值的。所以键值对遍历时我们我们先要遍历集合键;Keys 获取键值对的集合键,Values 获取键值对的值。
foreach (var item in dic.Keys)
{
Console.WriteLine("键是———:{0},值是———:{1}",item,dic[item]);
}
Dictionary< k , v >有另一种遍历方式 KeyValuePair< Tk , Tv > 一对数据一对数据的遍历。类型必须要和你遍历的集合类型一致。
foreach (KeyValuePair<string, string> item in dic)
{
Console.WriteLine("{0},{1}",item.Key,item.Value);
}
集合实例:
http://download.csdn.net/detail/joinl/9838927
知识点
泛型集合:一旦确定了泛型集合的类型里面元素的类型也就确定了,泛型集合只能存储固定类型的对象。也就不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换。