14. juli 2008 - 17:58
Der er
6 kommentarer og 1 løsning
Hvordan kopierer man en arraylist
Hvis man f.eks. gør følgende i java: arrayListA = arrayListB //Kopiering af ArrayListe A til ArrayListe B arrayListA.set(3,400) // På plads nummer 3 i ArrayListe B indsættes tallet 400. Hvordan kan det være at indholdet af ArrayListB på plads nummer 3 også vil være tallet 400 ?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Fordi det er referencer du kopierer. Og begge referencer peger derfor paa samme objekt.
Java: ArrayList a = new ArrayList(); ArrayList b = a; svarer til C++: ArrayList *a = new ArrayList(); ArrayList *b = a; her er det helt aabenlyst at a og b peger paa det samme.
Okay... Er det også tilfældet når man kopierer almindelige array's eller gælder det kun ArrayLists?
Det gaelder alle typer undtagen de simple typer. Og dermed ogsaa array.
Hvis du vil have et andet objekt så kan du: ArrayList a = new ArrayList(); ArrayList b = (ArrayList)a.clone();
Kurser inden for grundlæggende programmering