Java ArrayList sisältää kaikki ()

Java ArrayList sisältääAll () -menetelmä tarkistaa, sisältääkö taulukkolista kaikki määritetyn kokoelman elementit.

Menetelmän syntaksi containsAll()on:

 arraylist.containsAll(Collection c);

Tässä arraylist on ArrayListluokan kohde.

sisältääAll () -parametrit

containsAll()Menetelmä ottaa yhden parametrin.

  • kokoelma - tarkistaa, ovatko kaikki kokoelman elementit array-luettelossa.

sisältääAll () palautusarvon

  • palaa, truejos taulukko sisältää kaikki kokoelman elementit
  • heittää, ClassCastExceptionjos taulukkoluettelossa olevien elementtien luokka ei ole yhteensopiva määritetyn kokoelman elementtien luokan kanssa
  • heittoja NullPointerExceptionjos kokoelma sisältää null -elementtejä ja ArrayList ei salli null -arvoja

Huomautus : Voimme sanoa, että containsAll()menetelmä tarkistaa, onko kokoelma taulukon osajoukko.

Esimerkki 1: Java ArrayList sisältää kaikki ()

 import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList languages1 = new ArrayList(); // insert element to the ArrayList languages1.add("JavaScript"); languages1.add("Python"); languages1.add("Java"); System.out.println("ArrayList 1: " + languages1); // create another ArrayList ArrayList languages2 = new ArrayList(); // add elements to ArrayList languages2.add("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); // check if ArrayList 1 contains ArrayList 2 boolean result1 = languages1.containsAll(languages2); System.out.println("ArrayList 1 contains all elements of ArrayList 2: " + result1); // check if ArrayList 2 contains ArrayList 1 boolean result2 = languages2.containsAll(languages1); System.out.println("ArrayList 2 contains all elements of ArrayList 1: " + result2); ) )

Tuotos

 ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (Java, Python) ArrayList 1 sisältää kaikki ArrayList 2 -elementit: true ArrayList 2 sisältää kaikki ArrayList 1 -elementit: false

Yllä olevassa esimerkissä olemme luoneet kaksi taulukkoa, joiden nimi on languages1 ja languages2. Huomaa ilmaisu,

 // return true languages1.containsAll(languages2)

Tässä containsAll()menetelmä tarkistaa, sisältääkö kielet1 kaikki kielien 2 elementit. Siksi menetelmä palaa true. Huomaa kuitenkin seuraava ilmaisu:

 // return false languages2.containsAll(languages1)

Tässä containsAll()menetelmä tarkistaa, sisältääkö kielet2 kaikki kielien1 elementit. Siksi se palaa false.

Huomaa : containsAll()Menetelmä ei ole ominainen ArrayListluokalle. Luokka perii Listkäyttöliittymästä.

Esimerkki 2: sisältääAll () Java ArrayListin ja HashSetin välillä

 import java.util.ArrayList; import java.util.HashSet; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add element to ArrayList numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("ArrayList: " + numbers); // create a HashSet HashSet primeNumbers = new HashSet(); // add elements to HashSet primeNumbers.add(2); primeNumbers.add(3); System.out.println("HashSet: " + primeNumbers); // check if ArrayList contains all elements of HashSet boolean result1 = numbers.containsAll(primeNumbers); System.out.println("ArrayList contains all elements of HashSet: " + result1); // check if HashSet contains all elements of ArrayList boolean result2 = primeNumbers.containsAll(numbers); System.out.println("HashSet contains all elements of ArrayList: " + result2); ) )

Tuotos

 ArrayList: (1, 2, 3) HashSet: (2, 3) ArrayList sisältää kaikki HashSet-elementit: true HashSet sisältää kaikki ArrayList-elementit: false

Yllä olevassa esimerkissä olemme luoneet taulukot, joiden nimi on numerot ja hashset, jonka nimi on primeNumbers. Huomaa ilmaisut,

 // check if ArrayList contains HashSet // return true numbers.containsAll(primeNumbers) // check if HashSet contains ArrayList // return false primeNumbers.containsAll(numbers)

Huomaa : Voimme saada yhteiset elementit Java ArrayList retainAll () -menetelmän välillä ArrayListja HashSetkäyttämällä.

Mielenkiintoisia artikkeleita...