一、#List泛型集合
集合是OOP中的一个重要概念。
为什么要用泛型集合?
在C# 2.0之前,主要可以通过两种方式实现集合:
1.使用ArrayList
直接将对象放入ArrayList,操作直观,但由于集合中的项是Object类型,因此每次使用都必须进行繁琐的类型转换。
2.使用自定义集合类
比较常见的做法是从CollectionBase抽象类继承一个自定义类,通过对IList对象进行封装实现强类型集合。这种方式要求为每种集合类型写一个相应的自定义类,工作量较大。泛型集合的出现较好的解决了上述问题,只需一行代码便能创建指定类型的集合。
List<>的括号和数组的[]括号是不一样的,List集合的括号<>是表示要输入的数据类型.
怎样创建泛型集合?
主要利用System.Collections.Generic命名空间下面的List
基本使用如下
- //对象初始化器赋值
- List<string> list = new List<string> {
-
- "1",
- "2",
- "3",
- "4",
- "5",
- };
-
-
- //增加
- //list.Add("1");
-
-
- //list.Add("2");
- //list.Add("3");
- //list.Add("4");
- //list.Add("5");
- for (int i = 0; i < list.Count; i++) {
-
- Console.WriteLine(list[i]);
-
- }
- Console.WriteLine("******************");
- //根据索引插入
- list.Insert(2, "测试");
-
- for (int i = 0; i < list.Count; i++)
- {
-
- Console.WriteLine(list[i]);
-
- }
- //移除指定的索引数据
- Console.WriteLine("******************");
- list.RemoveAt(0);
-
- for (int i = 0; i < list.Count; i++)
- {
-
- Console.WriteLine(list[i]);
-
- }
- //移除的数据名称
- Console.WriteLine("******************");
-
- list.Remove("测试");
-
-
- for (int i = 0; i < list.Count; i++)
- {
-
- Console.WriteLine(list[i]);
-
- }
-
- //修改指定索引的数据
-
- list[2] = "测试2";
-
- //修改后
- Console.WriteLine("******************");
- for (int i = 0; i < list.Count; i++)
- {
-
- Console.WriteLine(list[i]);
-
- }
-
-
-
- student student = new student();
- student.age = 18;
- student.name = "小明";
-
- //数据类型弄成对象形式
- List
students = new List { -
- student,
- student, student, student, student, student, student, student, student, student, student
-
- };
- foreach (student Student in students) {
- Console.WriteLine(Student.age + "岁");
- Console.WriteLine(Student.name+"");
-
- }