2011-09-20 3 views
0

다른 세트에도 존재하는 한 세트에서 모든 객체를 제거하려면 어떻게합니까? exaple을 위해 :자바 세트에서 객체 제거

SET 1 = { a,b,c,d,e,f) | 
         |---> NEW SET 1= (a,b,d,e} 
SET 2 = {c,f)   | 

답변

6

나는 문제가 org.apache.commons.collections.CollectionUtils에서

set1.removeAll(set2); 
+1

주 집합에 포함 된 객체의 'equals'및 'hashCode' 구현이 모두 동작해야하거나 원하는 작업을 수행하지 못합니다. – Romain

+0

100 % 동의합니다. 꽤 직설적 인 :) – chzbrgla

0

코드가 무엇인지 잘 모르겠어요 하나 확인해야 것

public static Collection subtract(final Collection a, final Collection b) { 
     ArrayList list = new ArrayList(a); 
     for (Iterator it = b.iterator(); it.hasNext();) { 
      list.remove(it.next()); 
     } 
     return list; 
    }