加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何初始化2D数组的数组?

发布时间:2020-12-15 04:07:45 所属栏目:百科 来源:网络整理
导读:我有一个2D阵列阵列.例如,它就像: {{{0,1},{1,0}}{{0,3},{2,1,2},2,{3,7},6},{6,3,{7,0}}} 但如果我写 int [,][] arrays={{{0,0}} {{0,0}}}; 编译器会抱怨“;预期”. 如果我写 int [,][] arrays={new int[,] {{0,0}} new int[,0}}}; 编译器会抱怨 “A neste
我有一个2D阵列阵列.例如,它就像:
{{{0,1},{1,0}}
{{0,3},{2,1,2},2,{3,7},6},{6,3,{7,0}}}

但如果我写

int [,][] arrays={{{0,0}}
                  {{0,0}}};

编译器会抱怨“;预期”.

如果我写

int [,][] arrays={new int[,] {{0,0}}
                  new int[,0}}};

编译器会抱怨

“A nested array initializer is expected”.

那么为什么会这样发生,什么是正确的初始化方法?

解决方法

您正在尝试创建锯齿状阵列.你的数组有n行,所以你的第一个Square应该是[]不是[,].每行中的元素(n的索引)是2D数组,因此您需要使用[,].最后,您可以通过将int [,] []更改为int [] [,]来解决问题.
int[][,] arrays = {
    new int[,0}},new int[,0}}
};

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读