C# 集合系列 List集合 => List<T>

简述:

List泛型集合是C#编程中的经常使用的集合之一,相对数组它可以动态的添加元素而不是声明的时候就必须指定大小。相对于ArrayList集合和Hashtable集合的优势是其元素的数据类型可以确定。而不是默认的父类类型object。

List泛型集合的声明与元素添加:

List泛型集合的声明:

List<数据类型> 变量名=new list<数据类型>();

List<int> list = new List<int>();

注意:
1,以上代码声明的是一个int类型的泛型集合,其元素必须都为int型。
2,可以声明其他元素的泛型集合,只需要将int改成对应类型便可。

List泛型集合添加元素的Add()方法:

list.Add(0);
list.Add(1);
list.Add(0);

说明:
1,List泛型集合只能使用Add()方法添加元素,不能直接指定下标赋值如:“list[0]="2";”这样的语句是不合法的。因为List泛型集合在声明之后没有添加元素之前是空的,直接指定下标赋值会导致索引超出范围。
2,一旦元素添加成功,指定下标修改集合中的元素,如在这个声明例子中我们可以将"1"改成任何字符串,如“3”。
listNew[1]="3";
3,List泛型集合和数组一样,其下标是从0开始的。

List泛型集合添加数组的AddRanger()方法:

//创建一个数组
int[] arr = { 9, 9, 8 };
//添加一个数组中的元素
list.AddRange(arr);

 List泛型集合插入元素:

//插入元素,在下标为0的位置插入元素2
list.Insert(0,2);

 List泛型集合移出元素:

//移除元素,移除传进来的参数第一个匹配元素
//移除成功,返回true,否则返回false
bool result = list.Remove(0);
//移除对应下标为2的元素
list.RemoveAt(2);
//从指定的下标2开始,移除指定的个数的元素
list.RemoveRange(2,3);
//移除当前list中所有的偶数
list.RemoveAll(it=>it%2 == 0);
//移除当前list中大于5的数 lamda表达式
list.RemoveAll(item =>item>5);

List泛型集合元素反转: 

list.Reverse();

List泛型集合获取元素下标:

//获取集合中第一个和指定元素匹配的下标
int index = list.IndexOf(9);
//获取集合中最后一个和指定元素匹配的下标
index = list.LastIndexOf(0);

List泛型集合判断某个元素是否在该List中:

//语法:List.Contains(T item)   返回值为:true/false
if (liist.Contains("4"))
{
    Console.WriteLine("There is Hunter in the list");
}
else
{
    list.Add("5");
    Console.WriteLine("Add Hunter successfully.");
}

List泛型集合元素排序: 

//语法:List.Sort ()默认是元素第一个字母按升序
list.Sort();

 List泛型集合元素清空:

list.Clear();

 List泛型集合获取元素数量:

int count = list.Count();

总结:

list集合方法汇总:

  • Clear( ) 在List内移除所有元素

  • Contains( ) 测试一个元素是否在List内

  • CopyTo( ) 重载的公有方法,把一个List拷贝到一维数组内

  • Exists方法。检测一个元素是否在List内。

  • Add( ) 在List中添加一个对象的公有方法;

  • AddRange( ) 公有方法,在List尾部添加实现了ICollection接口的多个元素;

  • BinarySearch( ) 重载的公有方法,用于在排序的List内使用二分查找来定位指定元素.;

  • Find方法。查找并返回List内的出现的第一个匹配元素。

  • FindAll( ) 查找并返回List内的所有匹配元素

  • GetEnumerator( ) 重载的公有方法,返回一个用于迭代List的枚举器

  • Getrange( ) 拷贝指定范围的元素到新的List内

  • IndexOf( ) 重载的公有方法,查找并返回每一个匹配元素的索引

  • Insert( ) 在List内插入一个元素

  • InsertRange( ) 在List内插入一组元素

  • LastIndexOf( ) 重载的公有方法,,查找并返回最后一个匹配元素的索引

  • Remove( ) 移除与指定元素匹配的第一个元素

  • RemoveAt( ) 移除指定索引的元素。移除后,后续索引元素会自动前移。

  • RemoveRange( ) 移除指定范围的元素

  • Reverse( ) 反转List内元素的顺序

  • Sort( ) 对List内的元素进行排序,按字母升序排序。

  • ToArray( ) 把List内的元素拷贝到一个新的数组内

  • trimToSize( ) 将容量设置为List中元素的实际数目

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值