Partage

Déclaration des tableaux en java

Le 22 mai 2009 à 21:27:39

Bonsoir tlm,

Lisez svp la remarque suivante de m@teo21 sur la déclaration des tabelaux en java:

Vous pouvez aussi déclarer un tableau vide !

Attention, votre tableau sera vide mais, il doit avoir un nombre de cases défini !

Par exemple, si vous voulez un tableau vide de six entiers : :


int tableauEntier[] = new int[6];
//ou encore
int[] tableauEntier2 = new int[6];


J'ai essayé une déclaration d'un tableau sans définir le nombre de cases comme suit:
int tableauEntier[];

et j'ai pas eu de problème de compilation.
est-ce normal?
Le 22 mai 2009 à 23:20:54

Oui,en fait on déclare un tableau comme ça(dernier code)

Si on veut s'en servir par contre,il faut l'initialiser

(2 premiers codes);

par contre il est interdit de faire ceci

int tableauEntier[] = new int[];


Le 23 mai 2009 à 11:27:12

Bon comme le problème est sans doute résolu avec l'aide d'houlouk, je me permet de dire que c'est pas m@teo21 qui fait le tuto sur le Java mais cysboy.
Le 23 mai 2009 à 21:02:21

mais bon je pense qu'en java le tableau n'est pas vide, et que toutes ces valeurs sont initialisées (à 0 ou null)

int[] is = new int[4];
	
	for(int i : is)
	    System.out.println(i);
	
	Object os[] = new Object[2];
	
	for(Object o : os)
	    System.out.println(o);


0
0
0
0
null
null
Le 23 mai 2009 à 21:11:33

quarante-sept > Oui, parce que tu les as initialisé dans ton code. Maintenant, si tu fais int [] is; à la place de int [] is = new int[4]; , tu finis avec une belle erreur (en fait, il ne compilera même pas).

Ce n'est vraiment pas compliqué, il faut juste comprendre quelle partie correspond à la déclaration et quelle partie à la définition (et surtout comprendre que ce n'est pas la même chose).
Le 23 mai 2009 à 21:16:08

@Dalshim > cysboy dit "vide" pour un tableau initialisé


Citation


Vous pouvez aussi déclarer un tableau vide !

Attention, votre tableau sera vide mais, il doit avoir un nombre de cases défini !

Par exemple, si vous voulez un tableau vide de six entiers : :


int tableauEntier[] = new int[6];
//ou encore
int[] tableauEntier2 = new int[6];


Le 1 juillet 2013 à 10:37:33

Bonjour, je m'appelle Magloire.

J'aimerais savoir la différence entre un tableau null et un tableau de longueur zero

Le 10 février 2015 à 13:39:18

Un tableau null est un tableau pour lequel aucun espace mémoire n'est alloué. De ce fait, si ton tableau est null, il te sera impossible d'y entrer une donnée ou de le manipuler de facon générale. Ainsi, si tu essaye d'accéder à une "case" de ton tableau null que celà soit pour une opération de lecture ou d'écriture, tu recevras un erreur de type "null pointer exception". Pour que le tableau ne soit pas null il faut donc l'instancier avec l'opérateur "new".

A contrario, un tableau vide est un tableau qui possède un espace mémoire mais cet espace de contient "rien". Ainsi, si tu tente d'accéder à une case vide de ton tableau, le langage ne renverra pas d'erreur. Tu pourra sans problème accéder à une case vide et y inséré une donnée.

Un tableau de longueur zéro possède donc un espace mémoire mais aucune case. Tu sera donc probablement obligé de le redimensionner par la suite.

-
Edité par bigpanda57 le 10 février 2015 à 13:43:48

Déclaration des tableaux en java

× You will have to log in after clicking on "Answer" to publish your message.
× Be Careful, this topic is very old and could be out-of-date. We recommend you create a new topic for your question.
  • Editeur
  • Markdown