English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 가이드

Java 흐름 제어

Java 배열

Java 객체 지향(I)

Java 객체 지향(II)

Java 객체 지향(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력 출력(I/O)

Java Reader/Writer

Java 다른 주제

Java ArrayList containsAll() 사용 방법 및 예제

Java ArrayList 메서드

Java ArrayList containsAll() 메서드는 ArrayList가 지정된 집합의 모든 요소를 포함하고 있는지 확인합니다.

containsAll() 메서드의 문법은 다음과 같습니다:

arraylist.containsAll(Collection c);

containsAll() 파라미터

  • collection - 집합의 모든 요소가 ArrayList에 나타나는지 확인합니다.

containsAll() 반환 값

  • ArrayList이 지정된 집합의 모든 요소를 포함하고 있으면 true를 반환합니다.

  • ArrayList에 존재하는 요소 클래스와 지정된 집합의 요소 클래스가 불일치하면 ClassCastException이 발생합니다.

  • 집합에 null 요소가 있으며 ArrayList가 null 값을 허용하지 않으면 NullPointerException이 발생합니다.

주의:containsAll() 메서드는 집합이 ArrayList의 부집합인지 확인합니다.

예제1:Java ArrayList containsAll()

import java.util.ArrayList;
class Main {
    public static void main(String[] args) {
        //ArrayList 생성
        ArrayList<String> languages1 = new ArrayList<>();
        //ArrayList에 요소 추가
        languages1.add("JavaScript");
        languages1.add("Python");
        languages1.add("Java");
        System.out.println("ArrayList 1: " + languages1);
        //다른 ArrayList 생성
        ArrayList<String> languages2 = new ArrayList<>();
        //ArrayList에 요소 추가
        languages2.add("Java");
        languages2.add("Python");
        System.out.println("ArrayList 2: " + languages2);
        // ArrayList 확인 1ArrayList가 포함하고 있는지 확인 2 
        boolean result1 = languages1.containsAll(languages2);
        System.out.println("ArrayList 1ArrayList을 포함 2의 모든 요소 : " + result1);
        // ArrayList 확인 2ArrayList가 포함하고 있는지 확인 1 
        boolean result2 = languages2.containsAll(languages1);
        System.out.println("ArrayList 2ArrayList을 포함 1의 모든 요소 : " + result2);
    }
}

출력 결과

ArrayList 1: [JavaScript, Python, Java]
ArrayList 2: [Java, Python]
 ArrayList 1ArrayList을 포함 2의 모든 요소 : true
 ArrayList 2ArrayList을 포함 1의 모든 요소를 포함하지 않습니다. : false

위의 예제에서, 두 개의 languages1와 languages2의 ArrayList. 주의 표현식

// return true
languages1.containsAll(languages2)

여기서, containsAll() 메서드는 languages를 확인합니다1languages가 포함되는지 확인2의 모든 요소를 포함합니다. 따라서, 이 메서드는 true를 반환합니다. 하지만 주의하세요 아래의 표현식을

// return false
languages2.containsAll(languages1)

여기서, containsAll() 메서드는 languages를 확인합니다2languages가 포함되는지 확인1의 모든 요소를 포함하지 않습니다. 따라서, false를 반환합니다

주의:containsAll() 메서드는 ArrayList 클래스에 특정되어 있지 않습니다. 이 클래스는 List 인터페이스를 상속합니다.

예제2:Java ArrayList와 HashSet의 containsAll()

import java.util.ArrayList;
import java.util.HashSet;
class Main {
    public static void main(String[] args) {
        //ArrayList 생성
        ArrayList<Integer> numbers = new ArrayList<>();
        //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);
        System.out.println("HashSet: ") + primeNumbers);
        // ArrayList이 HashSet의 모든 요소를 포함하는지 확인 
        boolean result1 = numbers.containsAll(primeNumbers);
        System.out.println("ArrayList이 HashSet의 모든 요소를 포함하는지 확인 : ") + result1);
        // HashSet이 ArrayList의 모든 요소를 포함하는지 확인 
        boolean result2 = primeNumbers.containsAll(numbers);
        System.out.println("HashSet이 ArrayList의 모든 요소를 포함하는지 확인 : ") + result2);
    }
}

출력 결과

ArrayList: [1, 2, 3]
HashSet: [2, 3]
ArrayList이 HashSet의 모든 요소를 포함하는지 확인 : true
HashSet이 ArrayList의 모든 요소를 포함하는지 확인 : false

위의 예제에서 numbers라는 ArrayList와 primeNumbers라는 해시 셋을 생성했습니다. 주의할 점은 이 표현식입니다.

// ArrayList이 HashSet을 포함하는지 확인 
// return true
numbers.containsAll(primeNumbers)
// HashSet이 ArrayList를 포함하는지 확인 
// return false
primeNumbers.containsAll(numbers)

주의:우리는 Java ArrayList를 사용할 수 있습니다. retainAll() 메서드ArrayList와 HashSet의 공통 요소를 가져오기.

Java ArrayList 메서드