为什么在c#中int[] i = new int[2];i={1,2};是错误的。

2025-01-02 07:19:09
推荐回答(4个)
回答1:

你的问题是为什么是错误的,楼上几位都给出了怎么做是正确的,但没说什么错误。
先来说一下为什么错误。

int[] i = new int[2]; //正确,声明了一个长度为2的一维数组,并且每个值都有初始值0

i={1,2}; //语法错误 {1,2}这个不符合C#语法,是不会编译通过。(主要是C#语法没提供这个方便性,如果自己写个编译器支持这个语法就可以编译通过了,呵呵。

int[] i = { 1, 2 }; //{1,2}只有在赋值语句右侧才符合C#语法,但也只是C#语法的简便写法
int[] i=new int[2]{1,2}; //这个是标准写法,在初始化时进行赋值
还有一种分开的写法
int[] i = new int[2]; i[0]=1;i[1]=2; //这个更灵活。

回答2:

语法错误 例子:桌子分为左右两块 ,给桌子上两块分别放一个东西顺序是?你会给左边先放一个再给右边放一个,或者从右开发放。 怎么也不可能两个同时放。一个道理,定义了一个2个长度的数组,你要放连个值,也是有顺序的放才行。i[0]=1;i[1]=2;这样就不会错。

满意回答 请采纳 评分 谢谢

回答3:

int[] i = { 1, 2 };你直接这么写就行了

回答4:

赋值要i[1]=1;i[2]=2;

或者int[] i=new int[2]{1,2};