Impression d'éléments d'une liste en Java
Lorsque vous essayez d'imprimer des éléments d'une liste en Java, il est courant de rencontrer des pointeurs d'objet d'impression au lieu des valeurs prévues. Cela est principalement dû à l'utilisation de System.out.println(list.get(i));.
Comprendre le problème
La méthode get(i) in List renvoie la référence à l'objet à l'index i. Ce n'est pas la valeur de l'objet lui-même. Au lieu de cela, il représente l'emplacement de l'objet en mémoire. Lorsqu'il est transmis à System.out.println(), le comportement par défaut est d'imprimer la représentation toString() de l'objet, ce qui entraîne souvent l'affichage de l'adresse mémoire ou du pointeur de l'objet.
Résolution
Pour imprimer les valeurs réelles des objets, il existe plusieurs approches :
Méthode Arrays.toString() :
Cette méthode convertit un tableau représentation d'une liste dans une chaîne, qui peut ensuite être imprimée facilement :
<code class="java">System.out.println(Arrays.toString(list.toArray()));</code>
toString() Override :
Vous pouvez également envisager de remplacer la méthode toString() pour que vos objets fournissent des représentations sous forme de chaîne significatives. Cela garantit que System.out.println(list.get(i)); imprime directement la valeur souhaitée :
<code class="java">@Override public String toString() { return "Your custom string representation"; }</code>
En utilisant ces techniques, vous pouvez imprimer efficacement les valeurs des éléments de liste en Java, offrant clarté et facilité de débogage.
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!