L'impression et l'accès List <String[]>
Je suis en train de lire dans un fichier et le stocker dans t1. Comment puis-je avoir accès aux éléments de t1? Lorsque j'essaie d'imprimer-je obtenir les adresses au lieu de valeurs. Aussi quel est la différence entre String
et String[]
?
CSVReader reader = new CSVReader(new FileReader("src/new_acquisitions.csv"));
List <String[]> t1 = reader.readAll();
int i = 0
while(i < t1.size()) {
System.out.println(t1.get(i));
i++;
}
de sortie:
[Ljava.lang.String;@9304b1
[Ljava.lang.String;@190d11
[Ljava.lang.String;@a90653
[Ljava.lang.String;@de6ced
- merci pour toute l'aide =]
- Rappelez-vous "d'accepter" une réponse qui vous a aidé à mieux (à l'aide de la coche verte).
InformationsquelleAutor nubme | 2010-06-06
Vous devez vous connecter pour publier un commentaire.
String[] est un tableau de chaînes, d'où la raison pour laquelle il n'est pas l'impression que vous attendez, essayez:
Ou de façon plus concise:
Ou mieux encore:
Que Petar mentionné, votre liste est une liste de Tableaux de Chaînes, de sorte que vous êtes l'impression du tableau, pas le contenu du tableau.
Une manière paresseuse pour imprimer le contenu du tableau est de convertir le tableau à une
List<String>
avecjava.utils.Les tableaux de.toString()
:donne
Vous imprimez une Liste avec les tableaux. Alors que la Liste des classes de surcharger la méthode toString() pour imprimer chaque élément de ce tableau utilise la valeur par défaut toString utilisé par l'Objet qui imprime uniquement le nom de la classe et de l'identité de hachage.
Pour l'impression de tous vous devez parcourir la Liste et imprimer chaque tableau avec les Tableaux.toString().
Ou vous mettez chaque tableau dans une Liste
Vous pouvez imprimer la liste de contenu simplement en convertissant la liste dans à la matrice d'abord et ensuite à l'aide de Tableaux.toString comme ci-dessous
List<int[]>
etArrays.deepToString(list.toArray())
fonctionne à merveille!String[]
est un tableau de chaînes de caractères. Vous imprimer l'adresse de la table - quand vous voyez[L
que signifie un tableau. Vous avez pour itérer sur les éléments de chaque tableau, au lieu d'imprimer l'adresse:Comme je l'ai dit dans votre autre question, lors de la création de votre propre objet d'Enregistrement, vous pouvez mettre en œuvre la
toString()
la fonction de renvoi d'une représentation raisonnable de ce morceau de l'information.