c# – 如何通过id删除List中的多个对象?
发布时间:2020-12-15 23:50:44 所属栏目:百科 来源:网络整理
导读:我有一个课程如下 class MyClass{ public string id { get; set; } public string data { get; set; }} 我有一系列我需要删除的ID: ListmyClass myObjArray = new ListmyClass;myClass myObj1 = new myClass { id = "1",data = "aaa"};myClass myObj2 = new
我有一个课程如下
class MyClass { public string id { get; set; } public string data { get; set; } } 我有一系列我需要删除的ID: List<myClass> myObjArray = new List<myClass>; myClass myObj1 = new myClass { id = "1",data = "aaa"}; myClass myObj2 = new myClass { id = "2",data = "bbb"}; myClass myObj3 = new myClass { id = "3",data = "ccc"}; myClass myObj4 = new myClass { id = "4",data = "ddd"}; myObjArray.Add(myObj1); myObjArray.Add(myObj2); myObjArray.Add(myObj3); myObjArray.Add(myObj4); string [] idToBeRemove = {"1","3"}; 是否有任何方法可以删除myObjArray中的myObj,其中id在idToBeRemove字符串中? 解决方法
列表与LT; T>有一个方法RemoveAll将完成你需要的.与执行Where(…).ToList()之类的操作不同,它会修改现有列表而不是创建新列表.
myObjArray.RemoveAll(item => idToBeRemove.Contains(item.id)); 请注意,随着要删除的项目数组的增长,您需要转移到更高性能的项目,例如HashSet< T>,尽管当前计数为2,但这并非迫切需要. @Richardissimo还在你的问题的评论中提供了一个很好的建议,主题列表本身何时增长,字典< K,V>可能有用.同样,不是立即需要一个小列表,但随着它的增长和性能是一个问题需要记住. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ios – Modal UINavigationController – 我无法停止旋转
- 14.4版本的Xilinx SDK软件使用方法和FSBL文件的创建方法图解
- Quick cocos2dx-Lua(V3.3R1)学习笔记(7) ---计时器,我是
- reactjs – 使用bsClass和className与react-bootstrap有什么
- oracle如何用自己的pl/sql developer连接别人的数据库
- Flex BlazeDS Message Service
- c# XML和实体类之间相互转换(序列化和反序列化)
- uml – 使用源代码区分聚合和组合关系
- 大量的Oracle数据库视频教程提供下载
- VB.NET如何命名与其类型相关的变量?