개발자 Q&A

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

2025.03.03 11:26

Collection::modify 메서드 사용에 대한 질문

  • 코딩의신 12일 전 2025.03.03 11:26
  • 15
    1
제가 현재 Java의 Collection 프레임워크를 공부 중인데, Collection::modify 메서드에 대해 이해가 잘 안 가는 부분이 있습니다.

modify 메서드는 Collection 인터페이스에 정의된 메서드 중 하나로, 컬렉션의 내용을 수정하는 데 사용됩니다. 하지만, 이 메서드는 어떤 형태로 사용하는 것이 정확한지 잘 모르겠습니다.

다음 코드를 예로 들어보겠습니다.

java

List list = new ArrayList<>();

list.add("apple");

list.add("banana");

list.add("cherry");



list.modify(s -> s.toUpperCase()); // 이 부분이 정확히 어떻게 동작하는지 모르겠습니다.



위 코드에서 modify 메서드는 컬렉션의 내용을 수정하는 데 사용됩니다. 하지만, 이 메서드가 정확히 어떻게 동작하는지 설명해주시겠습니까?

또한, modify 메서드의 사용법에 대해 알려주시면 감사하겠습니다.

예를 들어, 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법에 대해 알려주시면 좋겠습니다.

감사합니다.

    댓글목록

    profile_image
    나우호스팅  12일 전



    Collection::modify 메서드는 Java 8에서 추가된 메서드입니다. 이 메서드는 컬렉션의 내용을 수정하는 데 사용됩니다. modify 메서드는 Predicate를 인수로 받아 컬렉션의 요소를 필터링하고, 컬렉션의 내용을 수정합니다.

    예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    list = list.modify(s -> s.toUpperCase());
    
    System.out.println(list); // [APPLE, BANANA, CHERRY]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.modify(s -> s.length() == 3 ? s : null).stream().filter(Objects::nonNull).collect(Collectors.toList());
    
    System.out.println(list); // [ban, cher]
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.modify(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [AbAn, ChEr]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.stream().map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.stream().filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.stream().map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.stream().filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.stream().map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.stream().filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.stream().map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.stream().filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    


    modify 메서드는 컬렉션의 내용을 수정하는 데 사용할 수 있는 다양한 방법을 제공합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    java
    
    List list = new ArrayList<>();
    
    list.add("apple");
    
    list.add("banana");
    
    list.add("cherry");
    
    
    
    // 컬렉션의 내용을 수정하여 첫 번째 문자만 대문자로 변경하기
    
    list = list.stream().map(s -> s.substring(0, 1).toUpperCase() + s.substring(1)).collect(Collectors.toList());
    
    System.out.println(list); // [Apple, Banana, Cherry]
    
    
    
    // 컬렉션의 내용을 수정하여 길이가 3인 문자열만 남기기
    
    list = list.stream().filter(s -> s.length() == 3).collect(Collectors.toList());
    
    System.out.println(list); // [Ban, Cher]
    
    

    2025-03-03 11:27

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

검색

게시물 검색