搜索对象列表
本文关键字:列表 对象 搜索 | 更新日期: 2023-09-27 18:04:03
我有一个这样的类。
class man
{
public string name { get; set; }
public string mail { get; set; }
}
我有一个这样的列表
List<man> ppl = new List<man>();
我想在列表中搜索一个名字为"Nimal"的人,并删除该人。怎么做呢?
List怎么样?RemoveAll方法
元素定义的条件匹配的所有元素指定谓词。
arts.RemoveAll(x => x.name == "Nimal");
如果你想删除列表中的第一个:
if(arts.Any(x => x.name == "Nimal"))
{
arts.Remove(arts.FirstOrDefault(x => x.name == "Nimal"));
}
如果你想删除所有符合条件的条目,你可以这样做:
if(arts.Any(x => x.name == "Nimal"))
{
arts.RemoveAll(x => x.name == "Nimal");
}
var Filtered= ppl.FirstOrDefault(a => a.Name == "Nimal");
var finalresult= ppl.Except(Filtered).ToList();
如果您想要名字的第一次出现,否则签出@astander answer:
var firstMatch = ppl.First (p => p.Name == "Nimal");
ppl.Remove (firstMatch);
如果你喜欢for
循环和if-condition
,你可以这样做:
for (int i = 0; i < ppl.Count; i++)
{
man m = ppl[i] as man;
if(m.Name.ToLower() == "nimal")
ppl.Remove(m);
}