Dictionary 给定关键字不在字典中,求教

klj218 2008-05-29 10:33:04
public Dictionary<string, Dictionary<int, string>> list = new Dictionary<string, Dictionary<int, string>>();
list["000000"][1] = "aaa"; 会出现异常 给定关键字不在字典中

求教
...全文
3097 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
klj218 2008-05-29
  • 打赏
  • 举报
回复
求教
klj218 2008-05-29
  • 打赏
  • 举报
回复
list[0][0]["aaa"]="fafdsa"; 这个代码也是有问题的
klj218 2008-05-29
  • 打赏
  • 举报
回复
必须要有这个字典的存在才行?
greystar 2008-05-29
  • 打赏
  • 举报
回复
字典中的对象也是字典,
public Dictionary <string, Dictionary <int, string>> list = new Dictionary <string, Dictionary <int, string>>();
list[0][0]["aaa"]="fafdsa";
先在list里加入一个字典,再操作新加的字典这样才可以
Jinglecat 2008-05-29
  • 打赏
  • 举报
回复
public Dictionary <string, Dictionary <int, string>> list = new Dictionary <string, Dictionary <int, string>>();
list["000000"][1] = "aaa"; // 通过索引器访问字典的时候,必须确保 key 存在

添加 ->

Dictionary <int, string> dict = Dictionary <int, string>();
dict.Add(1, "aaa");
// more dict.Add(...
// ...
list.Add("000000", dict);

比较健壮的访问方式

if( list.ContainsKey("000000") ){
Dictionary <int, string> dict = list["000000"];
if(dict.ContainsKey(1)) {
string v = dist[1];
// ....
} else {
// ....
}
}
vrhero 2008-05-29
  • 打赏
  • 举报
回复
有点小错...

public Dictionary <string, Dictionary <int, string>> list = new Dictionary <string, Dictionary <int, string>>();
list.Add("000000", new Dictionary <int, string>());
list["000000"].Add(1,"aaa");
vrhero 2008-05-29
  • 打赏
  • 举报
回复

public Dictionary <string, Dictionary <int, string>> list = new Dictionary <string, Dictionary <int, string>>();
list.Add("000000", new Dictionary <int, string>());
list.["000000"].Add(1,"aaa");

集合中的集合项也必须实例化必须赋值...

没有对象是凭空出来的...即使是齐天大圣也得找个石头往出蹦...

62,050

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧