• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

ArrayList samoczynnie zmienia dane

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
173 wizyt
pytanie zadane 3 maja 2017 w Java przez SebekMakaron Obywatel (1,290 p.)

Mam problem z ArrayList otóż:

Jest to tylko fragment który zilustruje mój problem:

private ArrayList<WriteFile>  files;
files = new ArrayList<>();

WriteFile writeFile = new WriteFile();
					writeFile.createFiles(path, tabbedPaneView.getName());
					writeFile.closeAll();
					files.add(writeFile);

I gdy w tym momencie sprawdze zapisywane dane w ArrayList czyli klasę writeFile poprzez System.out.println dostaje poprawne wyniki czyli poprawne dane są zapisane do ArrayList

ALE:

for(int i = 0; i < files.size(); i++)
                    System.out.println(files.get(i).getName());

badz:

for(WriteFile x: files)
       System.out.println(x.getName());

Po tym wywołaniu kazdy wypisany wiersz daje mi ostatni dodany element, czyli kazde pole ArrayList przyjmuje ostatni dodany element.

Z góry dziękuje za pomoc :D

komentarz 3 maja 2017 przez Andrus19 Bywalec (2,260 p.)
Z tego kodu co podałeś ciężko okreslić co jest nie tak.. a co się dzieje w tych dwóch metodach klasy WriteFile?
1
komentarz 3 maja 2017 przez SebekMakaron Obywatel (1,290 p.)
Problem rozwiązany zapisywałem w nim statyczne dane co jest błędem moim niedopatrzeniem

1 odpowiedź

+1 głos
odpowiedź 5 maja 2017 przez Wiciorny Ekspert (281,270 p.)
co do tego błędu to nie byłbym taki pewny? Zauważ- że dane statyczne-  zawsze zabierają tę samą komórkę pamięci i to się nie zmienia. Np. jeśli mowa tu o statyczne zmienne.

Pytam- bo ciekawi mnie fakt "co było oznaczone jako statyczne. Pozdro
1
komentarz 5 maja 2017 przez SebekMakaron Obywatel (1,290 p.)
W klasie tej zawarłem statycznego inta który przy zmianie zmieniał się w każdej klasie czyli jak wiadomo także w każdym zainicjowanym polu ArrayList.

Podobne pytania

0 głosów
1 odpowiedź 2,768 wizyt
0 głosów
1 odpowiedź 303 wizyt
pytanie zadane 3 maja 2019 w Java przez tomey Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 1,015 wizyt
pytanie zadane 25 grudnia 2015 w Java przez pulpet112 Użytkownik (760 p.)

93,440 zapytań

142,431 odpowiedzi

322,678 komentarzy

62,802 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...