在 C# 中使用 Linq 匹配 2 个集合之间的元素
我有一个关于如何在 linq 中执行常见编程任务的问题。
假设我们有不同的集合或数组。我想做的是匹配数组之间的元素,如果存在匹配,则对该元素执行某些操作。
例如:
string[] collection1 = new string[] { "1", "7", "4" };
string[] collection2 = new string[] { "6", "1", "7" };
foreach (string str1 in collection1)
{
foreach (string str2 in collection2)
{
if (str1 == str2)
{
// DO SOMETHING EXCITING///
}
}
}
这显然可以使用上面的代码来完成,但我想知道是否有一种快速而简洁的方法可以使用 LinqtoObjects 来完成此操作?
谢谢!
i have a question about how to do a common programming task in linq.
lets say we have do different collections or arrays. What i would like to do is match elements between arrays and if there is a match then do something with that element.
eg:
string[] collection1 = new string[] { "1", "7", "4" };
string[] collection2 = new string[] { "6", "1", "7" };
foreach (string str1 in collection1)
{
foreach (string str2 in collection2)
{
if (str1 == str2)
{
// DO SOMETHING EXCITING///
}
}
}
This can obviously be accomplished using the code above but what i am wondering if there is a fast and neat way you can do this with LinqtoObjects?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,相交 - 用于说明的代码示例。
Yes, intersect - Code sample to illustrate.
如果您想在匹配上执行任意代码,那么这将是一种 LINQ-y 方法。
If you want to execute arbitrary code on matches then this would be a LINQ-y way to do it.