List(列表)简单属性

  List<string> list = new List<string>() { "hellow", "word" };
  List<int> list2 = new List<int>() { 1, 2, 3 };
  List<object> list1 = new List<object>() { 1, "hellow", false };
  list.Add("mm");
  //添加字符串数组
  list.AddRange(new string[] { "xiin", "erxiang" });
  //修改
  list[3] = "XIIN";
 //删除
 //  list.Remove(list[3]); //根据值来删除
 //list.RemoveAt(3); //根据索引来删除
 //list.RemoveAll((s) => { return !string.IsNullOrEmpty(s); });  //根据满足的条件来删除
 //list.RemoveRange(1,3);//从指定索引位置开始删除几项
 //插入
 // list.Insert(2, "jj"); //在该索引前插入
 //list.InsertRange(1, new string[] { "a1","a2"});
Console.WriteLine("容量" + list.Capacity);  //容量成倍增加红黑树
Console.WriteLine("项数" + list.Count);
// list.ForEach((item)=> Console.WriteLine(item)); //ForEach循环每一项
  Console.WriteLine(list.Contains("mm")); //是否包含谋项 
 Console.WriteLine(list.Contains<string>("h")); 
  //自定义比较器
 IEqualityComparer<string> MyComparer = new MyCompare();
 Console.WriteLine(list.Contains<string>("h", MyComparer));//list中是否包含以h开头的项
 List<string> lists1 = new List<string>() {"abc" };
 List<string> lists2 = new List<string>() { "abc" };
 Console.WriteLine(lists1.Equals(lists2)); //比较两个列表内存地址是否相等  F
 Console.WriteLine(lists1 == lists2); //比较两个列表内存地址是否相等  F
//查找是否有以a开头的项
Console.WriteLine(lists1.Exists(s => s.StartsWith("a")));
 Console.WriteLine(list.IndexOf("mm")); //查找某项在列表中第一次的索引 找不到返回-1
 Console.WriteLine(list.LastIndexOf("mm"));//查找某项在列表中第一次的索引 找不到返回-1 倒着查
 list.Reverse(); //将列表反转 影响原列表
 list.Sort(); //排序 可以加自定义排序方法

 Console.WriteLine(list.Find((s) => s == "hellow"));  //返回满足lambda表达式逻辑中第一项匹配的结果,返回查询结果的项值没有则返回null
 //返回满足lambda表达式逻辑中一部分项匹配的结果,返回结果是列表没有则返回0
List<string> result = list.FindAll((s) => s.StartsWith("h"));
 int index1 =  list.FindIndex(s=>s=="hellow");
 Console.WriteLine(index1);
 //查询满足表达式项的索引找不到返回-1 (倒着查)
 int index2 = list.FindLastIndex(s => s == "hellow");
 Console.WriteLine(index2);
 

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值