如何检查C# Dictionary字典中存储的所有bool值是否全部为true
解决方案
可以直接使用LINQ提供的All()方法对字典的值集合做判断,该方法仅当所有元素都满足指定条件时才返回true,遇到第一个不符合条件的元素就会终止遍历,没有多余性能开销。
前置要求
需要先引入LINQ对应的命名空间:
using System.Linq;
代码实现
场景1:空字典视为满足条件(返回true)
这是All()方法的默认行为,空集合调用All()会直接返回true:
bool allValuesAreTrue = customDictionary.Values.All(value => value);
场景2:空字典视为不满足条件(返回false)
额外加字典非空的判断即可:
bool allValuesAreTrue = customDictionary.Count > 0 && customDictionary.Values.All(value => value);
内容的提问来源于stack exchange,提问作者tRuEsAtM
相关产品推荐
相关产品推荐

