首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

确定IEnumerable <T>是否包含另一个IEnumberable <T>的任何对象

在这个问题中,我们要确定一个泛型集合 IEnumerable<T> 是否包含另一个 IEnumerable<T> 的任何对象。为了解决这个问题,我们可以使用 LINQ 的 Any()Intersect() 方法。

首先,我们需要确保已经引入了 System.Linq 命名空间。

代码语言:csharp
复制
using System.Linq;

接下来,我们可以编写一个扩展方法来解决这个问题:

代码语言:csharp
复制
public static bool ContainsAny<T>(this IEnumerable<T> source, IEnumerable<T> other)
{
    return other.Any(source.Contains);
}

现在,我们可以使用这个扩展方法来检查一个 IEnumerable<T> 是否包含另一个 IEnumerable<T> 的任何对象:

代码语言:csharp
复制
IEnumerable<int> source = new[] { 1, 2, 3, 4, 5 };
IEnumerable<int> other = new[] { 3, 6, 9 };

bool containsAny = source.ContainsAny(other);

在这个例子中,source 包含 other 的对象,所以 containsAny 的值为 true

这个方法的时间复杂度为 O(n),其中 n 是 other 集合的元素数量。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券