Java中不能在声明数组大小的同时初始化的根本原因是什么?
PHP中文网
PHP中文网 2017-04-17 17:25:34
0
3
700

找了一下发现网上只说就这么定义的,哪位大神能帮忙解释一下根本原因?
是不是能从虚拟机的角度解释一下?
谢谢啦!

eg.

String s[] = new String[] {"1","2","3"};正确
String s[] = {"1","2","3"};正确
String s[] = new String[3] {"Zero","One","Two"};错误
PHP中文网
PHP中文网

认证0级讲师

répondre à tous(3)
阿神

L'initialisation du tableau consiste à obtenir la capacité fixe du tableau. La méthode
{"","",""} peut obtenir la capacité fixe du tableau et attribuer une valeur à chaque élément

.

new String[3] peut également indiquer au compilateur la capacité fixe du tableau, et en passant, définir chaque élément sur null,

Cependant, les deux méthodes permettant de spécifier simultanément la capacité fixe du tableau peuvent provoquer des conflits de syntaxe,

Par exemple, new String[4]{"","",""},

Donc afin d'éviter une telle ambiguïté, cette façon d'écrire qui régule également la capacité du tableau devrait être interdite syntaxiquement

Peter_Zhu

La grammaire est stipulée de cette manière. . .
Cela n'a rien à voir avec la machine virtuelle

https://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.10.1

小葫芦

Le tableau s'applique pour une zone mémoire de taille fixe

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal