Føj flere emner til en Java ArrayList

1. Oversigt over ArrayList

I denne hurtige vejledning viser vi, hvordan du tilføjer flere emner til en allerede initialiseret ArrayList.

For en introduktion til brugen af ArrayListhenvises til denne artikel her.

2. Tilføj alle

Først og fremmest vil vi introducere en enkel måde at tilføje flere elementer til en ArrayList.

Først bruger vi tilføjAlle (), som tager en samling som argument:

Skriv en anden liste = Arrays.asList (5, 12, 9, 3, 15, 88); list.addAll (anotherList);

Det er vigtigt at huske på, at de elementer, der er tilføjet i den første liste, vil henvise til de samme objekter som elementerne i AnotherList.

Af den grund vil alle ændringer, der foretages i et af disse elementer, påvirke begge lister.

3. Collections.addAll

Det Samlinger klasse består udelukkende af statiske metoder, der fungerer på eller returnerer samlinger.

En af dem er tilføjAlle, som har brug for en destinationsliste, og de emner, der skal tilføjes, kan specificeres individuelt eller som en matrix.

Her er det et eksempel på, hvordan man bruger det med individuelle elementer:

Liste liste = ny ArrayList (); Collections.addAll (liste, 1, 2, 3, 4, 5);

Og en anden til at eksemplificere operationen med to arrays:

Liste liste = ny ArrayList (); Heltal [] andetListe = nyt Heltal [] {1, 2, 3, 4, 5}; Collections.addAll (liste, otherList);

På samme måde som forklaret i ovenstående afsnit henviser indholdet af begge lister til de samme objekter.

4. Brug af Java 8

Denne version af Java åbner vores muligheder ved at tilføje nye værktøjer. Den, vi vil undersøge i de næste eksempler er Strøm:

Liste kilde = ...; Liste mål = ...; source.stream () .forEachOrdered (target :: add);

De største fordele ved denne måde er muligheden for at bruge skip og filtre. I det næste eksempel springer vi over det første element:

source.stream () .skip (1) .forEachOrdered (target :: add);

Det er muligt at filtrere elementerne efter vores fornødenheder. F.eks. Heltalværdien:

source.stream () .filter (i -> i> 10) .forEachOrdered (target :: add);

Endelig er der scenarier, hvor vi vil arbejde på en nul-sikker måde. For dem kan vi bruge Valgfri:

Optional.ofNullable (source) .ifPresent (target :: addAll)

I ovenstående eksempel tilføjer vi elementer fra kilde til mål ved metoden tilføjAlle.

5. Konklusion

I denne artikel har vi undersøgt forskellige måder at føje flere emner til en allerede initialiseret ArrayList.

Som altid kan kodeeksempler findes på GitHub.