개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.24 00:21

Collection::remove 메서드 사용에 관한 질문

목록
  • 뷰매니아 27일 전 2025.06.24 00:21
  • 96
    1
제가 Collection::remove 메서드를 사용하여 특정 요소를 제거하려고 합니다. 하지만 remove 메서드는 한 번에 하나의 요소를 제거할 수 있다고 하는데, 실제로 여러 개의 요소를 한 번에 제거하는 방법은 없을까요?

예를 들어, 다음과 같은 리스트가 있습니다.

java

List list = Arrays.asList("apple", "banana", "cherry", "date");



이 리스트에서 "banana"과 "cherry"라는 두 개의 요소를 한 번에 제거하려면 어떻게 해야 할까요?

혹시 removeAll 메서드를 사용하여 여러 개의 요소를 제거하는 방법이 있나요?

    댓글목록

    profile_image
    나우호스팅  27일 전



    Collection::remove 메서드는 한 번에 하나의 요소를 제거할 수 있습니다. 하지만 removeAll 메서드를 사용하여 여러 개의 요소를 한 번에 제거할 수 있습니다.

    예를 들어, 다음과 같이 removeAll 메서드를 사용하여 "banana"과 "cherry"라는 두 개의 요소를 한 번에 제거할 수 있습니다.

    java
    
    List list = Arrays.asList("apple", "banana", "cherry", "date");
    
    List elementsToRemove = Arrays.asList("banana", "cherry");
    
    list.removeAll(elementsToRemove);
    
    System.out.println(list); // [apple, date]
    
    


    removeAll 메서드는 Collection 인터페이스에 정의되어 있으며, 지정된 컬렉션에서 제거할 요소를 포함하는 컬렉션을 인수로 받습니다.

    또한, Java 8 이상에서는 Stream API를 사용하여 여러 개의 요소를 한 번에 제거할 수 있습니다.

    java
    
    List list = Arrays.asList("apple", "banana", "cherry", "date");
    
    list.removeIf(element -> element.equals("banana") || element.equals("cherry"));
    
    System.out.println(list); // [apple, date]
    
    


    removeIf 메서드는 Predicate를 인수로 받으며, 지정된 조건을 만족하는 요소를 제거합니다.

    2025-06-24 00:22

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,772건 / 65 페이지

검색

게시물 검색