在List<T>中删除主要有Remove()、RemoveAt()、RemoveRange()、RemoveAll()这几个方法。下面一一介绍使用方法和注意点。

我们以List<string>举例

var strList = new List<string> { "aa", "ba", "cc", "dd", "ee", "ff" };

一、Remove()删除List中匹配到的第一个项,参数为List<T>中的T,返回类型为bool,成功删除返回True,失败或者没有找到返回False。例如:

var rt =  strList.Remove("aa");

二、RemoveAt()删除指定索引的一项。参数为int ,表示索引。返回类型为void。例如:

strList.RemoveAt(0);

三、RemoveRange()删除指定索引段的项,第一个参数为删除的起始索引,第二个参数为删除的个数。范围类型为void。例如:

strList.RemoveRange(0, 2);

四、RemoveAll()删除所有匹配到的项,参数是一个Predicate<T> 委托,用于定义要删除的元素应满足的条件。返回类型为int型,表示删除的个数。例如:

//拉姆达表达式
var rt = strList.RemoveAll(j=>j.Contains("a"));
//自定义条件
private static bool IsDel(string str)
{return str.Contains("a");
}
var rt = strList.RemoveAll(IsDel);

转载于:https://www.cnblogs.com/fancyblogs/p/7150545.html

C# .Net ListT中Remove()、RemoveAt()、RemoveRange()、RemoveAll()的区别,ListT删除汇总相关推荐

  1. 奥莉嘎!!!ArrayList源码中remove、removeAll、clear方法我又肝了一遍,收获良多

    前言 点赞在看,养成习惯. 点赞收藏,人生辉煌. 点击关注[微信搜索公众号:编程背锅侠],第一时间获得最新文章. 看源码血泪史 刚开始工作面试的时候,面试官经常问ArrayList源码相关的问题,基本 ...

  2. python中的del,remove,pop有什么区别

    python中有3个删除元素的方法:del remove pop 虽然它们都是删除元素,用于删除列表.字符串等里面的元素,但是用法可不完全一样,元组由于是不可变的,所以不能使用哦!那么接下来就来看看它 ...

  3. python remove函数_python中remove函数的用法是什么?

    python中remove函数的用法是什么? python中remove函数的用法: 描述 remove() 函数用于移除列表中某个值的第一个匹配项. 语法 remove()方法语法: list.re ...

  4. [PYTHON] for循环中关于列表list中remove method 不得不说的秘密

    在学习for loop的时候,是否遇到过这样情况,在遍历列表的时候,无论是用remove方法还是通用del 不能删掉想删除的元素? 首先list中remove method 可以直接删除 想删掉的值, ...

  5. python多维列表索引越界怎么处理_Python中remove漏删和索引越界问题的解决

    list.remove方法在删除元素的时候往往会出现漏删或者索引越界的情况示例如下: 漏删: lst=[9,25,12,36] for i in lst: if i>10: lst.remove ...

  6. java list foreach 修改_Java ArrayList在foreach中remove的问题分析

    都说ArrayList在用foreach循环的时候,不能add元素,也不能remove元素,可能会抛异常,那我们就来分析一下它具体的实现.我目前的环境是Java8. 有下面一段代码: public c ...

  7. python中del和pop的区别_python中的del,remove,pop有什么区别

    python中有3个删除元素的方法:del remove pop 虽然它们都是删除元素,用于删除列表.字符串等里面的元素,但是用法可不完全一样,元组由于是不可变的,所以不能使用哦!那么接下来就来看看它 ...

  8. 隔一段时间撸一次,特别香,HashMap中remove、getOrDefault源码,一遍一遍、又一遍

    前言 点赞在看,养成习惯. 点赞收藏,人生辉煌. HashMap系列文章 第一篇 HashMap源码中的成员变量你还不懂? 来来来!!!整理好的成员变量源码解析 第二篇 撸啊撸,再次撸HashMap源 ...

  9. List中remove()方法的注意事项

    集合中remove注意事项 错误使用: 1.普通for循环遍历List删除指定元素错误 for(int i=0;i<list.size();i++){if(list.get(i)==3) {li ...

  10. List集合中remove方法的使用

    以ArrayList为例: //泛型为引用数据类型: ArrayList<String> list=new ArrayList<String>();list.add(" ...

最新文章

  1. HBM显存技术与市场前景
  2. ActiveMQ消息的延时和定时投递
  3. SystemImager自动化安装Linux系统(下)
  4. IDEA 热启动,每次更改代码后不用重启服务
  5. 【转载】SQL 模糊查询
  6. django自带调试服务器的使用
  7. [NOIp2012]开车旅行
  8. 用户注册加密操作,实现加密工具PasswordHelper
  9. FFmpeg之编译ffplay(十四)
  10. html java对象_Java遇见HTML——JSP篇之JSP内置对象(下)
  11. html5的ajax上传图片,html5标准Ajax上传图片
  12. oracle中number的用法,Oracle Number数字
  13. 这是什么意思admin.php,administratior是什么意思
  14. java 四分位算法_Java 四分位算法
  15. 蓝牙4.0 BLE传统配对绑定过程
  16. 码农小白 设计模式篇 状态模式
  17. 手把手教你安装 Fedora
  18. 源生之能--to Rain
  19. Scal:Master和worker之间的通信
  20. Java集合专题(含源码)

热门文章

  1. 电脑远程服务_上海苹果笔记本电脑维修寄修上门服务远程双系统组装机安重装更换主板键盘屏...
  2. php检查是否支持openssl,swoole环境是否支持openssl
  3. mysql学习资料_PHP程序员2020学习方向:高并发、性能调优、分布式、微服务...
  4. Java_8排序(冒泡排序和选择排序)
  5. Second kill system learning
  6. 请说出三种减少页面加载时间的方法
  7. fastjson对Date的处理
  8. 关于《大道至简》第八章的收获
  9. Windows 10 超过Windows 7成为最受欢迎的操作系统
  10. [JarvisOj][XMAN]lTell Me Something