Mémorandum sur le traitement du contenu de List
Préparez une classe de test
public class Test {
public static void main(String[] args) {
TestEntity enttity = new TestEntity();
TestEntity enttity2 = new TestEntity();
TestEntity enttity3 = new TestEntity();
ArrayList<TestEntity> list = new ArrayList<>();
list.add(enttity);
list.add(enttity2);
list.add(enttity3);
showEntityList(list);
}
static void showEntityList(ArrayList<TestEntity> list) {
System.out.println("Regardez le contenu de l'entité");
for (TestEntity a : list) {
System.out.println(a.a);
System.out.println(a.b);
System.out.println(a.c);
System.out.println(a.d);
}
}
}
public class TestEntity {
String a = "début";
String b = "b";
String c = "c";
String d = "d";
}
Résultat d'exécution
Regardez le contenu de l'entité
début
b
c
d
début
b
c
d
début
b
c
d
Lorsque vous touchez le contenu de l'objet extrait
Préparez une méthode
/**
*Sortez simplement l'entité et traitez-la
* */
static void modifyOnly(ArrayList<TestEntity> list) {
int size = list.size();
for (int i=0;i<size; i++) {
TestEntity value = list.get(i);
value.a = "Promenades Hajima(" + i + ")";
value.b = "2(" + i + ")";
value.c = "3(" + i + ")";
value.d = "4(" + i + ")";
}
}
Essayez d'utiliser ce qui précède
TestEntity enttity = new TestEntity();
TestEntity enttity2 = new TestEntity();
TestEntity enttity3 = new TestEntity();
ArrayList<TestEntity> list = new ArrayList<>();
list.add(enttity);
list.add(enttity2);
list.add(enttity3);
modifyOnly(list);
showEntityList(list);
Résultat d'exécution
Regardez le contenu de l'entité
Promenades Hajima(0)
2(0)
3(0)
4(0)
Promenades Hajima(1)
2(1)
3(1)
4(1)
Promenades Hajima(2)
2(2)
3(2)
4(2)
Le simple fait de le retirer et de traiter le contenu affectera le contenu de la liste.
C'est étrange, si je faisais ça au travail, ça ne serait pas réécrit, et quand j'ai réinitialisé l'entité réécrite, ça a fait ce que je voulais. Eh bien, ce mouvement est exactement ce à quoi je m'attendais.
Eh bien, je regarde la source du lieu de travail.
Grâce à @shiracamus, j'ai appris à rendre la source sur Qiita plus facile à lire. Merci de ne pas savoir comment utiliser Qiita avant les questions techniques.
Vous pouvez souligner et fusionner. Cependant, c'est un secret (sueur) que lorsque j'ai vérifié le contenu de l'indication après l'avoir fixée à la main sans le savoir, il est devenu un état fusionné et au contraire la correction est devenue étrange.
Recommended Posts