我需要一个类似于Java(http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html#containsAll(java.util.Collection))的Collection.containsAll的方法
我找到了ISet.IsSubsetOf,但是它是在ISet中定义的。我在IList中需要类似的一个。
有类似的东西吗?
最佳答案
您可以使用Except扩展方法来解决问题
var count = list1.Except(list2).Count();
if(count == 0)
{
// arrays contains same elements
}
或者您可以使用Any扩展方法直接获得布尔结果:
bool control = !(list1.Except(list2).Any());
如果我们使用negation operator会更好,因为如果存在任何其他元素,则Any返回true。
关于c# - Collection.containsAll在C#中的实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20923418/