Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Initialisation différée de tableau

2 réponses
Avatar
Dominique.Micollet
Bonjour,

Question philosophique N°4.

J'essaie ca :

int [] Tableau;
...
Des lignes de code....
...
Tableau={1,2,3,4};

Ça ne marche pas.
Une idée (autre que int [] Tableau={1,2,3,4}; :-) ?

Incidemment, j'aimerais comprendre pourquoi ca ne marche pas,
d'ailleurs.
--
Cordialement

Dominique MICOLLET Email : enlevez le .fr.fr
Universite de Bourgogne
9, Avenue Alain SAVARY BP 47870 Tel : +33/(0)3-80-39-59-27
21078 DIJON CEDEX FRANCE Tfx : +33/(0)3-80-39-68-69

2 réponses

Avatar
Jacques-Olivier Haenni
Bonjour,

Voici une solution:

int[] tableau;
...
tableau = new int[] {1, 2, 3, 4};

Je ne connais pas de bonne raison au fait que ta solution ne fonctionne
pas, si ce n'est que la spécification du langage Java est telle qu'elle est.

L'avantage de cette solution, c'est que l'on voit clairement qu'un
nouveau tableau est alloué. Le risque avec ta solution, c'est que le
développeur pourrait penser qu'il remplit ou modifie le contenu d'un
tableau existant.

Jacques-Olivier


wrote:

Bonjour,

Question philosophique N°4.

J'essaie ca :

int [] Tableau;
...
Des lignes de code....
...
Tableau={1,2,3,4};

Ça ne marche pas.
Une idée (autre que int [] Tableau={1,2,3,4}; :-) ?

Incidemment, j'aimerais comprendre pourquoi ca ne marche pas,
d'ailleurs.



Avatar
ilan.ginzburg
Peut etre parce que {1,2,3,4} ne donne pas assez d'information sur le
type du tableau, alors que quand c'est sur la meme ligne que la
declaration on déduit le type, ou si y'a un new int[] devant comme le
dit Jacques-Olivier la compilateur connait le type aussi.