gpt4 book ai didi

c# - 将一个集合中的所有项目与另一个集合中的项目进行比较?

转载 作者:行者123 更新时间:2023-11-30 21:20:19 25 4
gpt4 key购买 nike

嘿,我这里有这段代码:

ArrayList arrayList = new ArrayList();
arrayList.add("one");
arrayList.add("two");
arrayList.add("three");

List<DataRow> dataList = GetDataList(some params);

现在我想检查 arrayList 是否包含 dataList 中的其他元素。该字符串位于 dataList 中的 itemarray[0]。是否有一个不错的短代码版本可以做到这一点?

谢谢:-)

最佳答案

在 .NET 3.5 中检查一个列表中的所有元素是否包含在另一个列表中:

bool result = list.All(x => dataList.Contains(x));

或者您可以使用 Except 的组合来做到这一点和 Any :

bool result = !list.Except(dataList).Any();

在您的示例中,您使用的是 ArrayList .您应该将其更改为 List<object>List<string>使用这些方法。否则你可以写arrayList.Cast<object>() .

bool result = arrayList.Cast<object>().All(x => dataList.Contains(x));

关于c# - 将一个集合中的所有项目与另一个集合中的项目进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3350530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com