[java] [Ljava.lang.String;@7d4991ad
Résolu
domxaline
-
16 mai 2013 à 17:07
KX Messages postés 16761 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 9 août 2025 -
KX Messages postés 16761 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 9 août 2025 -
Bonjour,
j'écris ce prg,après compilation et exécution aucun problème mais
avec son output il s'ajoute une phrase, je ne comprend pas qu'est ce que c'est?
quelqu'un peut m'expliquer svp
output:
toto
tata
titi
tete
[Ljava.lang.String;@7d4991ad
1
2
3
4
5
[I@28d93b30
[Ljava.lang.String;@7d4991ad
[I@28d93b30
que veut dire ces lignes ?
j'écris ce prg,après compilation et exécution aucun problème mais
avec son output il s'ajoute une phrase, je ne comprend pas qu'est ce que c'est?
quelqu'un peut m'expliquer svp
public class Sdz1 { public static void main(String[] args) { String[]tab={"toto","tata","titi","tete"}; int[]tab2={1,2,3,4,5}; parcourrirTab(tab); System.out.println(tab); parcourrirTab(tab2); System.out.println(tab2); } static void parcourrirTab(String[]tab) { for(String str:tab) System.out.println(str); } static void parcourrirTab(int[]tab2) { for(int str:tab2) System.out.println(str); } }
output:
toto
tata
titi
tete
[Ljava.lang.String;@7d4991ad
1
2
3
4
5
[I@28d93b30
[Ljava.lang.String;@7d4991ad
[I@28d93b30
que veut dire ces lignes ?
2 réponses
la ligne :
System.out.println(tab);
affiche "[Ljava.lang.String;@7d4991ad " qui doit etre l'identifiant java (ou le pointeur) du tableau tab, car tab n'est pas affichable comme les types simples comme une chaine et caratère ou un entier, c'est un objet donc il affiche l'identifant du pointeur de l'objet.
la ligne
System.out.println(tab2);
affiche "[I@28d93b30" pour la même raison
System.out.println(tab);
affiche "[Ljava.lang.String;@7d4991ad " qui doit etre l'identifiant java (ou le pointeur) du tableau tab, car tab n'est pas affichable comme les types simples comme une chaine et caratère ou un entier, c'est un objet donc il affiche l'identifant du pointeur de l'objet.
la ligne
System.out.println(tab2);
affiche "[I@28d93b30" pour la même raison
16 mai 2013 à 18:17
C'est son hashCode. Cela vient de la méthode toString de Object (par défaut) qui affiche le nom de la classe, un @, et le hashCode de l'objet.