Comme le titre l'indique, je veux enregistrer chaque nouvel objet créé du nom de la personne dans une liste:
Ceci est mon code jusqu'à présent
Person Guy = new Person("NameOfGuy"); then list must be [NameOfGuy].
à chaque fois que je suis créer un objet personne, il est ajouté en tant que point «nul» dans la liste (lorsque j'utilise println).
comment je le change en nom du nouvel objet Person
comme
package javaapplication4;
import java.util.*;
public class Person {
private String namePerson;
static List personList = new ArrayList();
{
personList.add(getPersonName());
}
public Person(String namePerson){
this.namePerson = namePerson;
}
public void setPersonName(String namePerson){
this.namePerson = namePerson;
}
public String getPersonName(){
return namePerson;
}
public void setPersonList(List personList){
this.personList= personList;
}
public static List getPersonList(){
return personList;
}
3 Réponses :
List<String> personList = new ArrayList<>();
Comme indiqué par @ user7, vous ajoutez le nom dans la liste au mauvais endroit. Ce que vous devriez faire, c'est ajouter le nom de la personne dans la liste pendant que vous créez l'objet de la personne, c'est-à-dire à l'intérieur de votre constructeur. Remplacez votre constructeur par ceci:
public Person(String namePerson){
this.namePerson = namePerson;
personList.add(namePerson);
}
Vous pouvez effectuer le travail en faisant ci-dessous les modifications apportées à la classe Personne :
import java.util.*;
public class Person {
private String namePerson;
static List<String> personList = new ArrayList<>();
public Person(String namePerson) {
this.namePerson = namePerson;
personList.add(this.namePerson);
}
public void setPersonName(String namePerson) {
this.namePerson = namePerson;
}
public String getPersonName() {
return namePerson;
}
public void setPersonList(List personList) {
this.personList = personList;
}
public static List getPersonList() {
return personList;
}
}
J'allais là où était User7, mais ce n'était pas aussi rapide. Est-il nécessaire que lorsqu'un objet Person particulier sort de la portée, nous supprimions le nom de la personne de la PersonList? SI oui, il y a un peu plus de travail à faire, je pense.
Et faites attention aux avertissements du compilateur que vous recevez.