问题 数组

已加入
2016年7月6日
留言内容
5
地点
菲律宾
编程经验
1-3
Facebook
BryanJamesIlaga
你好!
我是C#的新手。我对数组有担心。
[1]
C#:
int[] int_arr = {1, 2, 3, 4, 5};
[2]
C#:
int[] int_arr = new int[]{1, 2, 3, 4, 5};
我搜索了MSDN和其他站点。他们说C#中的数组是对象,即System.Array是所有数组的抽象基类型。我知道在[2]中,实例化了int然后对其进行了初始化。同时,[1]没有实例化整数类型数组。两者之间的主要区别是什么?为什么以及何时应该使用[1]而不是[2],反之亦然?为什么[1]在不实例化的情况下起作用?

提前致谢!
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,566
地点
悉尼,澳大利亚
编程经验
10+
这两行代码在功能上是等效的。没有特定的情况,您应该在另一种之上使用。您应该选择自己喜欢使用的一种并坚持使用。第二行在赋值的右边指定对象是一个int数组,而第一行则推断出它。在某些情况下需要类型推断,它是为了支持LINQ而引入的,但在许多情况下,包括在这种情况下,它使您的代码更加简洁。在第一行中,由于花括号,编译器知道右边的是一个数组,并且可以看到每个元素都是一个int,因此它推断它是一个int数组,而无需像在Windows中那样显式指定。第二行。
 
最佳 底部