【发布时间】:2012-05-09 16:54:32
【问题描述】:
可能重复:
Arrays constants can only be used in initializers error
我正在研究数组,并通过这种捷径方法在一行中声明和初始化数组。例如,
int[] a = {1, 2, 3, 4, 5};
但是当我尝试执行以下代码时,我得到了这个编译器错误,说“数组常量只能在初始化程序中使用”。
int[] a;
a = {1, 2, 3, 4};
为什么会这样?
【问题讨论】:
-
这不是重复的。 OP 在问 why 而不是 how。
-
咩;不相信这是一个欺骗 - 链接的问题说“我该怎么做才能使它起作用”,这个问题问“为什么其他方式实际上不起作用”。这种差异导致了完全不同的答案——这个问题已经有了如何让它发挥作用。
-
这类问题很有趣,但几乎不可能回答——我们所能做的就是推测。不过,向编写规范的那部分的人询问这个问题真的很有趣,作为一个教学时刻(你为什么做这个设计而不是那个?)。
-
我已经通过它我知道声明和初始化数组的方法 jst 想知道为什么上面不允许。他们背后有什么合乎逻辑的原因吗?
标签: java