2012-07-08 7 views
1

MP3 파일의 "주석"섹션에서 TAGS (문자열)을 추가 및 제거하고 있습니다. 나는 주로 ArrayList에 의존하여 COMMENT 문자열 분할을 얻는다. 이제이 태그의 교차점을 찾고 싶습니다 (또는 ArrayList의 문자열 요소를 더 잘 표현할 수 있습니다).여러 arrayList 간의 요소 교차

올바른 컬렉션을 선택했는지, 또한 교차로를 찾는 가장 좋은 방법이 무엇인지 알아야합니까? 사용자가 10 또는 100 곡의 노래 (ArrayLists)를 선택하고 교차 태그를 요청할 수 있기 때문입니다. 내가 개별적으로 두 ArrayList의 교차 태그를 찾고 그 결과를 사용하여 3 번째 ArrayList를 조사해야합니까? 또는 데이터 구조를 변경해야합니까?

에세이를 작성하는 것에 대해 사과드립니다.

답변

0

교차로를 계산하려면 List이 아닌 Set을 사용해야합니다. 세트는 유니온 및 교차 (예 : removeAllretainAll)와 같은 정렬되지 않은 컬렉션 및 작업을 처리하는 데 적합합니다. 또한 "이 요소가 컬렉션에 포함되어 있습니까?"와 같은 질문에 대답하는 데 더 효율적입니다.

희망이 도움이됩니다.

+0

난 그냥 둘 다 세트의 요소의 교차점을 찾을 수있을하지 않을까요? – Achilles

+0

네 ... 그냥 각 세트의 쌍 방향 교차를합니다. – templatetypedef

+0

오오 그래서 위에서 설명한대로 둘 사이의 교차점을 찾은 다음 결과를 세 번째와 루프로 사용하는 것과 같을까요? – Achilles

0

기존 목록을 수정하지 않으려면 org.apache.commons.collections의 ListUtils를 사용하십시오.

ListUtils.intersection(list1, list2)

관련 문제