>Java >java지도 시간 >Java를 사용하여 두 문자열 목록에서 공통 요소와 고유 요소를 효율적으로 찾는 방법은 무엇입니까?

Java를 사용하여 두 문자열 목록에서 공통 요소와 고유 요소를 효율적으로 찾는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-27 09:16:11176검색

How to Efficiently Find Common and Unique Elements in Two String Lists Using Java?

두 목록 비교

두 개의 문자열 목록이 주어지면 목표는 공통 요소의 수를 결정하고 공유 요소와 고유 요소를 모두 식별하는 것입니다. 한 가지 가능한 접근 방식은 Java의 ArrayList 및 HashSet 클래스를 활용하는 것입니다.

ArrayList 사용:

ArrayList 클래스는 keepAll이라는 편리한 메서드를 제공합니다. 다른 컬렉션과 함께 호출되면 인수 컬렉션에 없는 호출 목록의 요소가 제거됩니다. 이는 공통 요소를 식별하는 데 활용될 수 있습니다.

import java.util.ArrayList;

ArrayList<String> list1 = new ArrayList<>();
list1.add("milan");
list1.add("dingo");
list1.add("elpha");
list1.add("hafil");
list1.add("meat");
list1.add("iga");
list1.add("neeta.peeta");

ArrayList<String> list2 = new ArrayList<>();
list2.add("hafil");
list2.add("iga");
list2.add("binga");
list2.add("mike");
list2.add("dingo");

list1.retainAll(list2);
System.out.println("Common elements: " + list1);

HashSet 사용:

ArrayList와 유사하게 HashSet 클래스를 사용하여 중복을 제거할 수 있습니다. addAll 및 RemoveAll 메소드를 활용하면 공통 요소와 고유 요소를 모두 계산할 수 있습니다.

import java.util.HashSet;

HashSet<String> set1 = new HashSet<>(list1);
HashSet<String> set2 = new HashSet<>(list2);

// Common elements
HashSet<String> common = new HashSet<>(set1);
common.retainAll(set2);
System.out.println("Common elements: " + common);

// Unique elements
HashSet<String> unique = new HashSet<>();
unique.addAll(set1);
unique.addAll(set2);
unique.removeAll(common);
System.out.println("Unique elements: " + unique);

이러한 접근 방식은 목록을 비교하고 원하는 정보를 추출하는 효율적인 방법을 제공합니다. 특정 요구사항에 맞게 코드를 자유롭게 맞춤설정하세요.

위 내용은 Java를 사용하여 두 문자열 목록에서 공통 요소와 고유 요소를 효율적으로 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.