CodeGym /Java blog /Tilfældig /Java ArrayList addAll() metode
John Squirrels
Niveau
San Francisco

Java ArrayList addAll() metode

Udgivet i gruppen
Hvis du har brug for at tilføje alle elementerne i en ArrayList()- samling til en anden, kan du bruge addAll()- metoden i Java ArrayList- klassen. I denne artikel vil jeg forklare, hvordan denne metode virker og give nogle kodeeksempler.

ArrayList addAll() metodesignatur

Der er to varianter af java.util.ArrayList.addAll -metoden. Her er de.

boolean addAll(Collection<? extends E> c)
Denne metode returnerer sand, hvis listen blev ændret som et resultat af opkaldet, men vigtigst af alt, tilføjer den alle elementer af den angivne samling til slutningen af ​​denne liste, i den rækkefølge, som de returneres af den angivne samlings Iterator. Element c er den liste, der vil blive tilføjet til din ArrayList . Metoden kaster også NullPointerException , hvis den angivne samling er null.

boolean addAll(int index, Collection<? extends E> c)
Denne metode indsætter alle elementerne i den angivne samling c i denne liste, startende ved det angivne positionsindeks.

ArrayList addAll() syntakseksempel

Sådan ser opkaldet til ArrayList addAll() -metoden ud i et Java-program:

myList.addAll(myNewList)) 
Hvor myList er den originale ArrayList , og myNewList er en liste, hvis alle værdier vil blive tilføjet til myList , hvis de findes.

myList.addAll(2, myNewList)) 
En variant af ArrayList addAll() -metoden med to parametre. Alle elementerne fra minNyListe vil blive tilføjet til minListe , og det første element minNyListe[0] bliver til minListe[2] , minNyListe[1] er nu minListe[3] , og så videre. Elementerne fra den oprindelige liste, startende fra kl. nummer 2, overføres til halen af ​​den nye kombinationsliste.

ArrayList addAll() kode eksempler

Nu er det tid til nogle kodeeksempler. Lad os oprette en liste over vores venner og kalde det 'venner' og tilføje deres navne der. Lad os sige, vi startede på college og fik et par nye venner på én gang. Det er et godt øjeblik at oprette en ny venneliste til dem. Tiden gik, du sikrede dig, at dine nye venner er rigtige én gang, så du besluttede at flytte dem til hovedvennelisten. Du kan gøre det ved at bruge addAll() metoden. I programmet vil vi udskrive til konsollen den indledende liste over venner, listen over nye venner, den opdaterede liste over venner, samt den booleske værdi returneret af addAll() metoden . Den returnerer sand, hvis den oprindelige liste blev ændret på grund af metodens funktion, og falsk, hvis dette ikke skete.

import java.util.ArrayList;
import java.util.List;

public class AddAllDemo {
       public static void main(String[] args) {

           List<String> friends = new ArrayList<>();
           friends.add("Johnny");
           friends.add("Ivy");
           friends.add("Rick");
           System.out.println(friends);
           List<String> newFriends = new ArrayList<>();
           newFriends.add("Andrew");
           newFriends.add("Alex");
           newFriends.add("Neil");
           System.out.println(newFriends);
           //let's print out the value addAll() method returns
           //here it's true because list friends was changed
           System.out.println(friends.addAll(newFriends));
           System.out.println("My new list with new friends added: ");
           System.out.println(friends);
       }
   }
outputtet er:
[Johnny, Ivy, Rick] [Andrew, Alex, Neil] sand Min nye liste med nye venner tilføjet: [Johnny, Andrew, Alex, Neil, Ivy, Rick]
Hvis vi gør den samme handling, men prøver at tilføje en tom liste til venner, vil metoden virke, men den vil returnere falsk, ikke sand, da den oprindelige liste ikke er ændret.

import java.util.ArrayList;
       import java.util.List;

public class AddAllDemo3 {
   public static void main(String[] args) {
       List<String> friends = new ArrayList<>();
       friends.add("Johnny");
       friends.add("Ivy");
       friends.add("Rick");
       System.out.println(friends);
       List<String> newFriends = new ArrayList<>();
       System.out.println(newFriends);
       System.out.println(friends.addAll(newFriends));
       System.out.println("My new list with new friends added: ");
       System.out.println(friends);
   }
}
Udgangen er:
[Johnny, Ivy, Rick] [] false Min nye liste med nye venner tilføjet: [Johnny, Ivy, Rick]
Lad os nu prøve addAll() metoden med to parametre.

boolean addAll(int index, Collection<? extends E> c)
Lad os tilføje nye venner til listen igen, ikke i halen, men i midten. Lad os sige lige efter Johnny, som i vores tilfælde er element nummereret nul.

import java.util.ArrayList;
import java.util.List;

public class AddAllDemo2 {
   public static void main(String[] args) {

       List<String> friends = new ArrayList<>();
       friends.add("Johnny");
       friends.add("Ivy");
       friends.add("Rick");
       System.out.println(friends);
       List<String> newFriends = new ArrayList<>();
       newFriends.add("Andrew");
       newFriends.add("Alex");
       newFriends.add("Neil");
       System.out.println(newFriends);
       System.out.println(friends.addAll(1, newFriends));
       System.out.println("My new list with new friends added: ");
       System.out.println(friends);
   }
}
Det forventede resultat af programmets arbejde: Andrew er nu nummer 1 på den kombinerede liste, Alex - 2, Neil - 3, og Ivy, som var # 1 før, er flyttet til 4. pladsen.
[Johnny, Ivy, Rick] [Andrew, Alex, Neil] sand Min nye liste med nye venner tilføjet: [Johnny, Andrew, Alex, Neil, Ivy, Rick]
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION