C# Dictionary.Add(key,"123") 与 Dictionary[key]="123"的区别
2011-11-15 17:51
579 查看
1. MSDN上对Dictionary[key]="123"的描述.
http://msdn.microsoft.com/zh-cn/library/9tee9ht2(v=VS.85).aspx
此属性提供使用以下 C# 语法访问集合中特定元素的能力:myCollection[key](在 Visual Basic 中为 myCollection(key))。
通过设置 Dictionary 中不存在的键值,还可以使用 Item 属性添加新元素。设置属性值时,如果该键在 Dictionary 中,则分配的值将替换与该键关联的值。如果该键不在 Dictionary 中,则将键和值添加到字典中。相比之下,Add 方法不修改现有元素。
键不能为 空引用,但是如果值类型 TValue 为引用类型,该值则可以为空。
2.MSDN上Dictionary.Add(key,"123") 链接。
http://msdn.microsoft.com/zh-cn/library/k7z0zy8k(v=VS.85).aspx
3.总结 (Dictionary.Add(key,"123") 和 Dictionary[key]="123")
如果Dictionary中已经有了key, 则再Add会报错: Dictionary 中已存在具有相同键的元素。
而 Dictionary[key]则不会报错,没有时添加,有时则修改替换,因此,更加推荐使用这个方法,更安全,不必写个if判断。
http://msdn.microsoft.com/zh-cn/library/9tee9ht2(v=VS.85).aspx
此属性提供使用以下 C# 语法访问集合中特定元素的能力:myCollection[key](在 Visual Basic 中为 myCollection(key))。
通过设置 Dictionary 中不存在的键值,还可以使用 Item 属性添加新元素。设置属性值时,如果该键在 Dictionary 中,则分配的值将替换与该键关联的值。如果该键不在 Dictionary 中,则将键和值添加到字典中。相比之下,Add 方法不修改现有元素。
键不能为 空引用,但是如果值类型 TValue 为引用类型,该值则可以为空。
2.MSDN上Dictionary.Add(key,"123") 链接。
http://msdn.microsoft.com/zh-cn/library/k7z0zy8k(v=VS.85).aspx
3.总结 (Dictionary.Add(key,"123") 和 Dictionary[key]="123")
如果Dictionary中已经有了key, 则再Add会报错: Dictionary 中已存在具有相同键的元素。
而 Dictionary[key]则不会报错,没有时添加,有时则修改替换,因此,更加推荐使用这个方法,更安全,不必写个if判断。
相关文章推荐
- C# Dictionary.Add(key,"123") 与 Dictionary[key]="123"的区别
- C# Dictionary.Add(key,value) 与 Dictionary[key]=value的区别
- [C#]泛型与非泛型集合类的区别及使用例程,包括ArrayList,Hashtable,List<T>,Dictionary<Tkey,Tvalue>,SortedList<Tkey,Tvalue>,Queue<T>,Stack<T>等
- ssh : how to add "hostkey" to “know_hosts”
- String str1 = "123"; if("123".equals(str1))和if(str1=="123")的区别
- C#学习常用类(3000)---ConcurrentDictionary<TKey,TValue>类.TryRemove方法
- C#中NULL,"",DBNULL,String.Empty,Convert.IsDBNull()的区别
- C#中null和""的区别
- C#优化字符串操作(3)--@"abc"和"abc"区别在那里
- C# HashTable、HashSet和Dictionary的区别
- "int i=1" "int i=new int() "和“String str = "a";” “String str = new String("a")”区别以及c#值类型和引用类型
- DEMO[C#]refKeyword and outKeyword 关于ref与out关键字区别的DEMO
- C#中NULL,"",DBNULL,String.Empty,Convert.IsDBNull()的区别
- NULL,"",String.Empty三者在C#中的区别
- C#中进行字符串类型声明时,一个小写 "string ", 一个大写 "String ", 这两个类有什么区别呢?
- c# 用Dictionary.add 为什么将已添加元素内容改变了
- C# 数组、ArrayList、List、Dictionary的用法与区别
- C# HashTable、HashSet和Dictionary的区别
- DEMO[C#]refKeyword and outKeyword 关于ref与out关键字区别的DEMO
- C#中null与""的区别;C#中的几种跳转语句详解