给出两个字符串数组我想找到A1中带有A2的第一个字符串。我知道我可以做到这一点"长手"但我可以使用Array.Find()或类似的东西吗?
非常感谢
答案 0 :(得分:0)
听起来你基本上对交叉感兴趣了。 LINQ救援!
var firstCommon = a1.Intersect(a2).FirstOrDefault();
Intersect
的文档会建议这将按a2
的顺序返回项目:
枚举此方法返回的对象时,
Intersect
枚举 first ,收集该序列的所有不同元素。然后它枚举 second ,标记在两个序列中出现的那些元素。最后,标记的元素按照它们被收集的顺序产生。
然而,这显然是不正确的。它实际上会枚举 second ,然后以 first 的顺序生成结果......这就是你想要的。