找了一下发现网上只说就这么定义的,哪位大神能帮忙解释一下根本原因?
是不是能从虚拟机的角度解释一下?
谢谢啦!
eg.
String s[] = new String[] {"1","2","3"};正确
String s[] = {"1","2","3"};正确
String s[] = new String[3] {"Zero","One","Two"};错误
阿神2017-04-17 17:27:34
配列の初期化は、配列の固定容量を取得することです。
{"","",""} メソッドは、配列の固定容量を取得し、各要素に値を割り当てることができます。
ただし、配列の固定容量を同時に指定する 2 つの方法では、構文の競合が発生する可能性があります。
例: new String[4]{"","",""}、
そのような曖昧さを避けるために、配列の容量も規定するこの書き方は構文的に禁止すべきです
天蓬老师2017-04-17 17:27:34
文法はこのように規定されています。 。 。
仮想マシンとは関係ありません
https://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.10.1