如何在二维数组中赋值

时间:2014-05-01 12:54:49

标签: c# arrays

如何在c#

中的二维数组中赋值

我的代码是

int[,] matarix = new int[4, 5];

        for (int x = 0; x < 4; x++)
        {
            for (int y = 0; y < 5; y++)
            {
                matarix[x, y] = x+"-"+y;
            }
        }

我尝试了上面的代码,但是显示错误&#34;无法隐式地将字符串转换为int&#34; 怎么做 ?感谢

2 个答案:

答案 0 :(得分:1)

你走在正确的轨道上。只需指定一个值。

int[,] matarix = new int[4, 5];

for (int x = 0; x < 4; x++) {
    for (int y = 0; y < 5; y++) {
        matarix[x, y] = VALUE_HERE;
    }
}

我要做的一个建议是使用Array.GetLength而不是硬编码for循环。您的代码将成为:

int[,] matarix = new int[4, 5];

for (int x = 0; x < matarix.GetLength(0); x++) {
    for (int y = 0; y < matarix.GetLength(1); y++) {
        matarix[x, y] = VALUE_HERE;
    }
}

您传入其中一个数组的维度,它会告诉您该维度存在多少个索引。

答案 1 :(得分:1)

这是我通常用于填充二维数组的模板。 它的一行很容易改变。

        int[,] Foo = new int[4,5];
        for(int i=0;i < Foo.Length; i++, Foo[i % Foo.GetLength(0),i / Foo.GetLength(1)] = 0; // Or value to assign

另外请注意你的数组在给它字符串时保持整数(“”将它转换为字符串,而x - y保持整数) 希望它有所帮助