如何使用C#对列表中的类似项进行分组?

时间:2016-03-07 00:07:04

标签: c# linq

我一直试图解决这个问题半天,没有运气。我在列表中有一堆对象。我想用相等的y值对列表进行排序,我在这里做了:

ListOfObjects.Sort((y1,y2) => y1.y.CompareTo(y2.y));

但是现在我想在新列表中将所有具有相等y值的对象分开。我该如何处理?

1 个答案:

答案 0 :(得分:1)

您可以使用GroupBy

var groups = ListOfObjects.GroupBy(x => x.y);

如果您明确需要列表:

var lists = ListOfObjects.GroupBy(x => x.y).Select(x => x.ToList());