- .NET Framework : 4.7.2
- IDE : Visual Studio Community 2022
- OS : Windows 10 x64
- typesetting : Markdown
- blog : niaoge.blog.csdn.net
简介
本文介绍如何查询Dictionary 中某个值是否已经存在。
ContainsValue
命名空间:
System.Collections.Generic
程序集:
System.Collections.dll
确定 Dictionary<TKey,TValue> 是否包含特定值。
函数原型
public bool ContainsValue (TValue value);
参数
value TValue
要在 Dictionary<TKey,TValue> 中定位的值。 对于引用类型,该值可以为 null。
返回
Boolean
如果 true 包含具有指定值的元素,则为 Dictionary<TKey,TValue>;否则为 false。
注解
此方法使用默认相等比较器 EqualityComparer.Default 确定相等性,即 TValue字典中的值类型。
此方法执行线性搜索;因此,平均执行时间与 Count成正比。 也就是说,此方法是 O (n) 操作,其中 n 为 Count。
代码
using System;
using System.Collections.Generic;namespace Niaoge
{class Program{static void Main(string[] args){// 新建字典var d = new Dictionary<string, string>();// 向字典中添加内容d.Add("key1", "value1");d.Add("key2", "value2");d.Add("key3", "value3");if (d.ContainsValue("value2")){Console.WriteLine("value2已经存在");}else{Console.WriteLine("value2不存在");}if (d.ContainsValue("value3")){Console.WriteLine("value3已经存在");}else{Console.WriteLine("value3不存在");}if (d.ContainsValue("haha")){Console.WriteLine("haha已经存在");}else{Console.WriteLine("haha不存在");}Console.ReadKey();}}
}
运行结果
value2已经存在
value3已经存在
haha不存在
参考
[文档] https://learn.microsoft.com/zh-cn/dotnet/csharp/
[源码] https://referencesource.microsoft.com/
[平台] www.csdn.net
总结
利用函数ContainsValue,可以查询Dictionary 中某个值是否已经存在。
函数ContainsValue返回true,表明字典中已经存在某个值;
函数ContainsValue返回false,表明字典中不存在某个值。
作者:鸟哥
希望我的文章对您有所帮助,如有问题请在下方留言。
限于本人水平,文中内容难免有错,如有错误望不吝指出。
如有csharp .net objectarx autocad 计算几何 等方面的问题,我们可以一起交流。
最后感谢所有帮助过我的老师和朋友。