以下两种初始化Dictionary的方法有什么不同?
var obj = new Dictionary<string, string>() {
{ "FirstName" , "Eric"}
};
var obj1 = new Dictionary<string, string> { ["FirstName"] = "Eric" };
第一个等价于
new Dictionary<string, string>().Add("FirstName", "Eric");
第二个等价于
new Dictionary<string, string>()["FirstName"] = "Eric";
这两个行为是不一样的。
例如,下面这段代码,前面出错,后面不出错的。
var obj = new Dictionary<string, string>() { {"FirstName", "Eric"}, { "FirstName" , "Eric2"} }; var obj1 = new Dictionary<string, string> { ["FirstName"] = "Eric", ["FirstName"] = "Eric2" };