Maison > Java > javaDidacticiel > Pourquoi ne puis-je pas initialiser directement les tableaux Java en dehors des déclarations ?

Pourquoi ne puis-je pas initialiser directement les tableaux Java en dehors des déclarations ?

Linda Hamilton
Libérer: 2024-12-12 19:56:11
original
282 Les gens l'ont consulté

Why Can't I Directly Initialize Java Arrays Outside of Declarations?

Comprendre la syntaxe d'initialisation de tableau en dehors des déclarations

En Java, l'initialisation de tableau peut être assez simple, en particulier lorsqu'elle est utilisée dans des déclarations. Cependant, lorsque vous tentez d'initialiser un tableau en dehors d'une déclaration, des limitations de syntaxe spécifiques apparaissent, comme le démontrent les scénarios suivants :

AClass[] array = {object1, object2}; // Valid
Copier après la connexion
AClass[] array = new AClass[2];
...
array[0] = object1;
array[1] = object2; // Also valid
Copier après la connexion

Cependant, lors de l'utilisation de la syntaxe suivante en dehors d'une déclaration :

AClass[] array;
...
array = {object1, object2};
Copier après la connexion

Un message d'erreur apparaîtra, indiquant que cette initialisation n'est pas autorisée. Pourquoi Java est-il si strict à ce sujet ?

La raison est quelque peu arbitraire, car les concepteurs Java peuvent avoir eu des justifications grammaticales ou historiques spécifiques pour cette restriction. Il n'est pas toujours clair pourquoi des règles de syntaxe spécifiques existent, mais il est essentiel de les respecter pour une exécution réussie du code.

Bien que cela puisse parfois être gênant, il existe des solutions de contournement pour initialiser des tableaux en dehors des déclarations. Par exemple, la syntaxe suivante fonctionnera :

AClass[] array;
...
array = new AClass[]{object1, object2};
Copier après la connexion

Ainsi, même si Java peut imposer certaines contraintes sur l'initialisation des tableaux en dehors des déclarations, il fournit des méthodes alternatives pour obtenir le résultat souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal