c# - 按值从 KeyValuePair 列表中删除重复项
问题描述
我有一个KeyValuePair
C# 格式的列表,格式为KeyValuePair<long, Point>
. 我想从列表中删除具有重复值的项目。
{X,Y}
具有坐标的 Point 对象。
样本数据:
List<KeyValuePair<long, Point>> Data= new List<KeyValuePair<long,Point>>();
Data.Add(new KeyValuePair<long,Point>(1,new Point(10,10)));
Data.Add(new KeyValuePair<long,Point>(2,new Point(10,10)));
Data.Add(new KeyValuePair<long,Point>(3,new Point(10,15)));
期望的输出:
1,(10,10)
3,(10,15)
解决方案
您可以在单行中执行此操作:
var 结果 = Data.GroupBy(x => x.Value).Select(y => y.First()).ToList();
推荐阅读
- r - WCAG 2.1 与 shinydashboard 应用程序表单标签的兼容性
- amazon-web-services - Amazon MQ & ETL- how to read the data?
- php - PHP Protect property cannot be public but needed in Test
- sass - How to integrate @for loops with different variables?
- python - Discord bot 不响应命令
- sql-server - BizTalk setup - issues with SSO configuration
- javascript - 如何在组件中显示输出而不是控制台日志
- ajax - Prevent Ajax form from being submitted twice?
- python - Django Views and Model: Create ManyToMany User Balance relationship with all other Users - Who Owes money to who?
- google-apps-script - Google Apps marketplace Review Process