gpt4 book ai didi

c# - 比较同一列表中的多个项目

转载 作者:太空狗 更新时间:2023-10-30 01:06:55 26 4
gpt4 key购买 nike

List<Person> PList = new List<Person>();

PList.Add(new Person{ Name = "Bob", email = "Bob.b@blah.org" });

基本上这包含文件中的重复行

我想弄清楚的是如何删除很多人,直到列表中每个人只有一个实例。

我最初的想法是使用for循环来遍历并根据比较删除

for (int i = 0; i < List.length; i++)
{
if (PList.position(i).name == PList.position(i++).name)
if (PList.position(i).date is < PList.position(i++).date)
"Then I will delete number 1"
}

但是,我想知道是否有更好或更简单的方法来做到这一点?

最佳答案

试试这个

PList = PList.GroupBy (x => x.Name).SelectMany (x=>x.OrderBy(y=> y.Date).Take(1))

我还没有执行查询。

想法是group首先,然后 order之后的分组 take每个有序组的第一个。

关于c# - 比较同一列表中的多个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13926111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com