Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 一个键有两个值的多维数组_C#_Arrays_Multidimensional Array - Fatal编程技术网

C# 一个键有两个值的多维数组

C# 一个键有两个值的多维数组,c#,arrays,multidimensional-array,C#,Arrays,Multidimensional Array,我需要创建一个数组,一个键可以有两个值。 我希望数组的格式如下所示: array = { "key" => {"value1", "value2"} } public string[,,] array = new string[,,] { { { "1", "5", "6" }, { "2", "5", "7" } }, { { "3", "1"

我需要创建一个数组,一个键可以有两个值。 我希望数组的格式如下所示:

array = 
{
    "key" => {"value1", "value2"}
}
public string[,,] array = new string[,,] 
    {
        {
            { "1", "5", "6" }, 
            { "2", "5", "7" }
        },

        {
            { "3", "1", "2" }, 
            { "4", "1", "3" }
        }
    };
我尝试过如下格式化数组:

array = 
{
    "key" => {"value1", "value2"}
}
public string[,,] array = new string[,,] 
    {
        {
            { "1", "5", "6" }, 
            { "2", "5", "7" }
        },

        {
            { "3", "1", "2" }, 
            { "4", "1", "3" }
        }
    };
但我只得到16个循环值,我想从我输入的键访问它们


如何创建数组以获得所需的输出?

最简单的方法是将a与字符串键一起使用,将a用于值。字典本质上具有快速键查找功能,而命名值元组在访问键时为您提供了一些安全性

// Instantiated the dictionary
var funky = new Dictionary<string,(int Value1, int Value2)>();

// add some values
funky.Add("mykey",(1,5));
funky.Add("anotherKey",(4,5));

// access the values
Console.WriteLine(funky["mykey"].Value1);
Console.WriteLine(funky["anotherKey"].Value2);
//实例化了字典
var funky=新字典();
//添加一些值
funky.Add(“mykey”,(1,5));
添加(“另一个键”(4,5));
//访问这些值
Console.WriteLine(funky[“mykey”].Value1);
Console.WriteLine(funky[“anotherKey”].Value2);

您不是在寻找数组。您可能正在搜索字典。所以,MS说到字典:

表示键和值的集合。

所以,您需要使用给定的键访问一些值。就是这样。 例如:

Dictionary<string, string[]> xs = new Dictionary<string, string[]>()
            {
                {"key1", new string[] {"value1","value1.1"} },
                {"key2", new string[] {"value2","value2.2"} },
            };

xs["key3"] = new string[] { "test42" };
Dictionary xs=new Dictionary()
{
{“key1”,新字符串[]{“value1”,“value1.1”},
{“key2”,新字符串[]{“value2”,“value2.2”},
};
xs[“key3”]=新字符串[]{“test42”};

最好的方法是创建一个字典,您可以在其中使用唯一键访问值,并且值可以是您想要的任何类型。 在本例中,它是具有字符串键和字符串值列表的字典

var keyValues = new Dictinary<string, List<string>>();
keyValues.Add("key1", new List()
    {
        "Value1",
        "Value2"
    });
var keyValues=new dictionary();
添加(“key1”,新列表()
{
“价值1”,
“价值2”
});

数组没有键。你是在寻找一个新的方法还是一个实现?嗯,所以它与PHP不同。。。什么对PHP数组更为简单,或者在本例中,什么更易于实现?可能的重复项您可能正在寻找C#MultiMap,或者可能只是一个
字典
我不懂PHP,但我发现了这个问题(重复项候选者)。检查它,如果它回答了您的问题,请接受它作为副本。@King先生,这是您应该接受并从中学习的答案!天哪!实际上,在看到您的评论之前,我已经这样做了:string[,]arr=newstring[,]{{“1”,“2”},{“3”,“4”};字典列表=新字典();对于(inti=0;i