我无法理解这两种奇怪的行为
1. 第一行为
我已经声明了一个这样的变量
double[][] dd =
{
new double[10],
new double[10]
};
它不会给出错误。
但是,如果我这样做,它会给出错误
double[][] dd;
dd = { // Here it gives 2 errors says Invalid Expression { and ; expected
new double[10],
new double[10] //Here and in the above line it says only
//assignment, call, increment....can be used as a statement
};
如果我这样做,错误就消失了
double[][] dd;
dd = new double[][]{
new double[10],
new double[10]
};
为什么?
2. 第二种行为
,
此外,在上述任何情况下,如果在数组的最后一个元素之后放置一个额外的逗号,则不会出错
{
new double[10],
new double[10], //This comma here is not given as error. Why?
};
如果该额外的逗号未指定应在其后添加一个实体。