我有一个List<Integer>
,这个列表包含重复的元素:
//myList content is something like e.g. 1,2,1,3,3,6,7,...
List<Integer> myList = getNumbers();
Set<String>
众所周知,我还有一个,Set
只包含独特的元素,没有重复的元素。我的Set<String>
包含字符串类型整数:
//The Set content is String type integer , e.g. "1", "3", "5" …
Set<String> mySet = getNumSet();
我想比较mySet
找出myList
哪些元素mySet
有但myList
没有并从中删除这些元素mySet
。
我现在的方法是使用嵌套迭代,如下所示:
for(Integer i : myList){
for(String s : mySet){
if(!myList.contains(Integer.valueOf(s))){
mySet.remove(s);
}
}
}
有比我更有效的方法吗?