(Java) n'imprimerons pas les attributs d'objet dans boucle

Liam Ralph:

Comme quelque chose à me aider à apprendre Java, je suis en train de faire un programme avec un constructeur qui crée « simp » (un simp n'est pas lié code) des objets, qui ont chacun trois attributs. Je fais ces objets en boucle à travers trois pour les boucles simultanément:

for(int i = 0; i < simpNames.size(); i++) {
      Simp simp = new Simp(simpNames.get(i), simpOrigins.get(i), simpingLevels.get(i));
      System.out.println(simp);
}

et la gestion de leurs attributs par un constructeur dans une autre classe Simp. J'utilise des listes de ArrayList et voici mon constructeur:

public Simp(String newName, String newOrigin, int newSimpingLevel) {
  name = newName;
  origin = newOrigin;
  simpingLevel = newSimpingLevel;
}

Cependant, chaque fois que je lance la fonction, il sort "Simp @ 7cca494b, Simp @ 7ba4f24f, Simp @ 3b9a45b3" sur trois lignes distinctes.

Quelqu'un peut-il me dire pourquoi il fait cela et comment y remédier?

Komuravelli Sai Charan:

Vous essayez d'imprimer l'adresse de l'objet lors de l' exécution: System.out.println(simp);Si vous voulez que les attributs de cet objet , vous pouvez utiliser

System.out.println(simp.name + “ “ + simp.origin);

Si les attributs sont publics (si elles sont privées, vous pouvez utiliser leurs apporteurs correspondants).

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=318881&siteId=1
conseillé
Classement