如何在字典中创建更多 2 个参数
本文关键字:参数 创建 字典 | 更新日期: 2023-09-27 18:36:34
我正在尝试构建一个简单的应用程序,重点是我必须使用字典。我的字典里会有这样的数据:
(键,数字,数字,数字,数字)
所以下面是我的代码,它实现了我的数据。
Dictionary<string,int,int,int,int> states = new Dictionary<string,int,int,int,int>();
我已经查看了许多有关如何解决它的来源,但我找不到它。我收到一个错误,它必须有两个参数。
你能给我一个解决方案,让字典可以容纳 2 个以上的参数吗?
您可以创建一个类来保存 4 个数字,如下所示:
public class MyData
{
public int Number1 {get;set;}
public int Number2 {get;set;}
public int Number3 {get;set;}
public int Number4 {get;set;}
}
并将其用作字典值类型,如下所示:
Dictionary<string,MyData> states = new Dictionary<string,MyDate>();
下面是将项添加到字典的代码示例:
states.Add("my_key", new MyData { Number1 = 1, Number2 = 2, Number3 = 3, Number4 = 4});
要访问特定密钥的数据,您可以使用:
MyData data = states["my_key"];
int number1 = data.Number1;
//...
若要循环访问所有数据,可以使用如下所示的简单foreach
:
foreach(var kvp in states)
{
var key = kvp.Key;
var data = kvp.Value;
var number1 = data.Number1;
//...
}
MyData
的另一种选择是Tuple
类。但是拥有自己的类型可能会更好,因为您可以为 4 个数字属性使用自己的名称。
如果最后四个整数的名称无关紧要,则可以使用
Dictionary<string, List<int>>
通过这种方式,您可以使用字符串键获取 int 列表,然后枚举该列表。
或者您可以使用任何数组类型,例如
Dictionary<string, int[]>