Loading...
墨滴

莫激

2021/12/14  阅读:47  主题:默认主题

List

List

List的本质

  • List是一个C#为我们封装好的类
  • 它的本质是一个可变类型的泛型数组
  • List类帮助我们实现了很多方法
  • 比如泛型数组的增删查改

申明

List<int> list = new List<int>();
List<String> list2 = new List<string>();
List<bool> list3 = new List<bool>();

增删查改

  • 这样限制类型就可以避免拆箱装箱
list.Add(5);//只能添加int类型
list2.Add("1231");//只能添加字符串类型
list3.Add(true);//只能添加布尔类型

List<string>listStr = new List<string>();
listStr.Add("2435");
list2.AddRange(listStr);//结果是1231 2435,这个是范围添加,将整个数组加到另一个函数后面

list.Insert(0,999);//在0位置插入999

  • 移除指定元素

list.Remove(5); //移除值为5的数

  • 移除指定位置的元素

list.RemoveAt(0); //移除索引为0的数

  • 清空

list.Clear();

  • 得到指定位置的元素

    int i = list[0];

  • 查看元素是否存在

    list.Contains(value);//这里输入的是值,它的返回值是布尔类型

  • 正向查找元素位置

    list.IndexOf(value);//正向查找值为value的元素位置

  • 反向查找元素位置

    list.LastIndexOf(value);//反向查找值为value的元素位置

list[0]=99;//注意要所指定的类型

遍历

  • 长度 list.Count;
  • 容量list.Capacity;
for(int i=0;i<list.Count;i++)
{
    Console.WriteLine(list[i]);
}
foreach(int item in list)
{
    Console.WriteLine(item);
}

好处

更多会选择List,相比ArrayList,List不会出现装箱拆箱过程,提高性能

因为List是泛型,在使用的时候可以指定类型

而ArrayList是万物之父Object类型,因此会出现装箱拆箱过程。而且Object类型使用起来非常麻烦,要转换来转换去

当然也不是说ArrayList完完全全没有好处,可以看我前面发的关于ArrayList的详细讲解,当我们不确定会传入什么类型时,就可以用ArrayList

莫激

2021/12/14  阅读:47  主题:默认主题

作者介绍

莫激