曾尝试研究它,但甚至不确定如何使用谷歌搜索。
我知道这会导致错误var intArray = {1,2,3,4};
,并且必须是
var intArray = new int[]{1,2,3,4};
或int[] intArray = {1,2,3,4};
但是我似乎找不到真正的原因,为什么我不能使用第一个。
因为至少我希望它默认情况下会成为对象[]。
所以我要问的基本上是:为什么第一个不正确/不允许。
var intArray = { 1, 2, 3, 4 }; //incorrect
var numArray = new int[] { 1, 2, 3, 4 }; //correct
int[] digArray = { 1, 2, 3, 4 }; //correct
〜欢迎提出一个更好的标题的建议,真的不知道该怎么问。〜
答案 0 :(得分:2)
您的局部变量初始值设定项( var )在明确定义值时不知道您要赋予的类型。
所以:
var intArray = { 1, 2, 3, 4 };
输入一个类型后,它可能会起作用:
int intArray = { 1, 2, 3, 4 };
但是我们当然知道您不能在单个int中存储4个值,因此需要声明一个数组。
int[] digArray = { 1, 2, 3, 4 };
因为至少我希望它默认情况下会成为对象[]。
var = {1,2,3,4}可能有很多变体,因此您的IDE无法编译该代码并将其存储在内存中。您是否将其称为1个对象? 4个物体?字符串值?它是JSON模式吗?
答案 1 :(得分:0)
var intArray = new int[]{}
int[] digArray = {}
这两个指定数组的大小。创建数组时必须要做的事情。 哪里
var numArray
没有。
如果您不想定义数组的大小,则可以使用列表。