Maison >Java >javaDidacticiel >Pourquoi la méthode `toString()` de Java produit-elle une sortie cryptique pour les tableaux ?
ToString() peu commun de Java pour les tableaux
En Java, la méthode toString() est censée fournir un outil utile et lisible par l'homme. représentation sous forme de chaîne d’un objet. Cependant, lorsqu'il s'agit de tableaux, cette attente ne se vérifie pas.
La particularité de ToString() d'un tableau
Considérez le code suivant :
char[] Array = {'a', 'b', 'c', 'd', 'e', 'f'}; System.out.println(Array.toString());
Au lieu de renvoyer la chaîne attendue "abcdef", ce code affiche du charabia comme "[C@6e1408" ou "[C@e53108."
Ce comportement est dû au fait que l'implémentation toString() par défaut de Java pour les tableaux produit une chaîne cryptique contenant :
La solution
Pour obtenir une représentation sous forme de chaîne lisible par l'homme d'un tableau, utilisez le Méthode statique Arrays.toString() à la place :
System.out.println(Arrays.toString(Array));
Cette méthode renvoie explicitement la chaîne "abcdef" souhaitée.
La justification
Java Le choix d'utiliser une implémentation cryptique de toString() pour les tableaux est souvent considéré comme une erreur. L'intention derrière cette conception était probablement de donner la priorité aux adresses mémoire lors du débogage, mais cela s'est avéré plus déroutant qu'utile dans l'utilisation quotidienne.
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!