Java ArrayList retainAll() メソッド

Java ArrayList Java ArrayList

retainAll() メソッドは、arraylist 内の要素のうち、指定されたコレクションにも存在する要素を保持します。つまり、指定されたコレクションに存在しない要素を削除します。

retainAll() メソッドの構文は次のとおりです:

arraylist.retainAll(Collection c);

注:arraylist は ArrayList クラスのオブジェクトです。

パラメータの説明:

  • collection - コレクションパラメータ

戻り値

arraylist から要素が削除された場合は true を返します。

arraylist 内に存在する要素が、指定された collection のクラス内の要素と互換性がない場合は、ClassCastException 例外がスローされます。

arraylist に null 要素が含まれており、指定された collection が null 要素を許可しない場合は、NullPointerException がスローされます。

例

指定されたコレクション内の要素を保持します:

例

import java.util.ArrayList;
class Main {
    public static void main(String[] args){

        // 動的配列を作成する
        ArrayList<String> sites = new ArrayList<>();
       
        sites.add("Google");
        sites.add("サンプル");
        sites.add("Taobao");

        System.out.println("ArrayList 1: " + sites);

        // 別の動的配列を作成する
        ArrayList<String> sites2 = new ArrayList<>();

        // 動的配列に要素を追加する
        sites2.add("Wiki");
        sites2.add("サンプル");
        sites2.add("Google");
        System.out.println("ArrayList 2: " + sites2);

        // 要素を保持する
        sites.retainAll(sites2);
        System.out.println("保持された要素: " + sites);
    }
}

上記のプログラムを実行すると、出力結果は次のとおりです:

ArrayList 1: [Google, サンプル, Taobao]
ArrayList 2: [Wiki, サンプル, Google]
保留的元素: [Google, サンプル]

上記の例では、sites と sites2 という名前の動的配列を作成しました。

この行に注意してください:

sites.retainAll(sites2);

この例では、retainAll() メソッドの引数として配列 sites2 を渡しました。このメソッドは、sites から sites2 に存在しない要素を削除します。

ArrayList と HashSet の共通要素:

例

import java.util.ArrayList;
import java.util.HashSet;

class Main {
    public static void main(String[] args) {
        // 配列を作成する
        ArrayList<Integer> numbers = new ArrayList<>();

        // 配列に要素を追加する
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("ArrayList: " + numbers);

        // HashSetオブジェクトを作成する
        HashSet<Integer> primeNumbers = new HashSet<>();

        // HashSetに要素を追加する
        primeNumbers.add(2);
        primeNumbers.add(3);
        primeNumbers.add(5);
        System.out.println("HashSet: " + primeNumbers);

        // arraylist内の共通要素を保持する
        numbers.retainAll(primeNumbers);
        System.out.println("共有元素: " + numbers);
    }
}

上記のプログラムを実行すると、出力結果は次のとおりです:

ArrayList: [1, 2, 3]
HashSet: [2, 3, 5]
共有元素: [2, 3]

上記の例では、numbers という名前の ArrayList と primeNumbers という名前の HashSet を作成しました。

この行に注意してください:

numbers.retainAll(primeNumbers);

コードでは、retainAll() メソッドが numbers 動的配列から primeNumbers に存在しないすべての要素を削除しました。

Java ArrayList Java ArrayList

その他の拡張