[英]Handle Union of List in C# with duplicates
我试图了解如何处理两个可能有重复的列表的联合或合并。 例如,List1具有{A,B,C},List2具有{B,C,D}。 我试图使用Union操作并得到一个带有值(A,B,C,D)的新列表。但是,我需要第二个列表中的B&C值,而不是第一个。有没有办法指定联合方法,重复使用的值。
我现在使用的代码是
var newList = List1.Union<Object>(List2).ToList();
谢谢你的帮助。 Javid
Union在逻辑上是一个集合操作。 Concat是您正在寻找的。
List1.Concat(List2)
你能做到:
var newList = List2.Union<Object>(List1).ToList();
..因为扭转他们可能会给你你需要的?
编辑:
这显然不起作用。 对不起,我没有测试过,这只是对问题的第一反应。
怎么样,使用上面的反转符号,然后调用List.Sort()让它们按你想要的顺序返回? 它假定您有一个可以订购的属性,但如果有人没有提出更优雅的解决方案,您甚至可以创造一个属性。
你有没有尝试过
var newList = List2.Union<Object>(List1).ToList();
你可以看一下Join
你的清单。 在该操作之后,您将拥有每个副本的“连接”对象以进行检查...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.