recherche

Maison  >  Questions et réponses  >  le corps du texte

Java中不能在声明数组大小的同时初始化的根本原因是什么?

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

eg.

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

répondre à tous(3)je répondrai

  • 阿神

    阿神2017-04-17 17:27:34

    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

    répondre
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:27:34

    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

    répondre
    0
  • 高洛峰

    高洛峰2017-04-17 17:27:34

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

    répondre
    0
  • Annulerrépondre