【发布时间】:2016-05-23 10:23:00
【问题描述】:
如何在c#中将数组分配给字典
下面的代码不工作
ArrayList conf_list = new ArrayList();
var variations = new Dictionary<string, List<string>>();
conf_list.Add ("hi");
conf_list.Add ("bye");
conf_list.Add ("ss");
conf_list.Add ("fefe");
conf_list.Add ("gg");
conf_list.Add ("qwq");
conf_list.Add ("trt");
variations["available"] = conf_list;
错误:
Severity Code Description Project File Line Suppression State
Error CS0029 Cannot implicitly convert type 'System.Collections.ArrayList' to 'System.Collections.Generic.List<string>' ConsoleApplication1 c:\users\administrator\documents\visual studio 2015\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs 27 Active
如何将孔数组一次推入字典??
注意:我不想用这个方法
variations["available"] = new List<string> { "hi","bye" };
【问题讨论】:
-
您的意思可能是使用
List<string>而不是ArrayList -
如果您将字典声明为
Dictionary<string, List<string>>,为什么要使用ArrayList而不是List<string>? -
还要注意
ArrayList和List<T>都不是数组。请注意,编译器会准确地告诉您出了什么问题:“无法将类型'System.Collections.ArrayList'隐式转换为'System.Collections.Generic.List<string>'”它们不是一回事 - 所以不要尝试像使用它们一样使用它们。
标签: c# arrays dictionary