找了一下发现网上只说就这么定义的,哪位大神能帮忙解释一下根本原因?
是不是能从虚拟机的角度解释一下?
谢谢啦!
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
배열 초기화는 배열의 고정 용량을 얻는 것입니다.
{"","",""} 메서드는 배열의 고정 용량을 얻고 각 요소에 값을 할당할 수 있습니다.
단, 어레이의 고정 용량을 동시에 지정하는 두 가지 방법은 문법적 충돌이 발생할 수 있으니,
예를 들어 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