加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – IEnumerable包含IEnumerable

发布时间:2020-12-15 23:32:58 所属栏目:百科 来源:网络整理
导读:我有两个IEnumerable对象,我想验证其中一个是否包含另一个的所有元素. 我正在使用obj1.Intersect(obj2).Any()但是交集不能像我期望的那样工作.即使obj1中存在obj2中的一个元素,它也会返回true. 有没有办法验证obj1中是否存在obj2的所有元素? 解决方法 没有
我有两个IEnumerable对象,我想验证其中一个是否包含另一个的所有元素.

我正在使用obj1.Intersect(obj2).Any()但是交集不能像我期望的那样工作.即使obj1中存在obj2中的一个元素,它也会返回true.

有没有办法验证obj1中是否存在obj2的所有元素?

解决方法

没有一个LINQ方法可以满足您的需要而无需至少指定一个lambda.但是,有多种方法可以使用LINQ.以下是一些选项(测试obj2是否为obj1的子集):

obj1.Intersect(obj2).Count() == obj2.Count()

要么

obj2.All(x=>obj1.Contains(x))

要么

obj2.Except(obj1).Any()

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读