创建一个大数组c#

本文关键字:数组 一个 创建 | 更新日期: 2023-09-27 18:12:17

我对c#非常非常陌生,想问一个可能非常愚蠢的问题,我学的第一门语言是Java,我可以这样做:

int[][] array = new int[1600][900];
array[600][400] = 10;
for(int x = 0; x < 1600; x++)
{
    for(int y = 0; y < 900; y++)
    {
        int something = colour[x][y];
    }
}

现在我已经在网上搜索了很长一段时间,但我不知道如何在c#中做到这一点

编辑:

谢谢大家的帮助,这是很有用的:)

创建一个大数组c#

请使用逗号:

int[,] array = new int[1600,900];
array[600,400] = 10;
//...

您可以在c#中以非常相似的方式做到这一点:

int[,] array = new int[1600,900];
array[600,400] = 10;
for(int x = 0; x < 1600; x++)
{
    for(int y = 0; y < 900; y++)
    {
        int something = colour[x,y];
    }
}

我不确定我是否理解了double for循环中的代码的目的。我想这三段代码没有什么共同之处。

int [,] array = new int[1600,900];

为答案增添一些色彩:在。net中,int[][]是一个锯齿数组,或者是数组的数组。虽然这可能是一个非常适合您使用的结构,但它有额外的开销,每个数组必须单独初始化。所以你的初始化是:

int[][] array = new int[1600][];
for(int i=0;i<array.Length;i++)
    array[i] = new int[900];

现在可以使用

访问单个值
array[600][400] = 10;

使用锯齿数组的一个好处是"内部"数组可以是不同的大小。如果您不需要这种灵活性,那么使用矩形([,])数组可能是更好的选择。