我有一个ArrayList:
ArrayList<Integer> example = new ArrayList<Integer>();
example.add(1);
example.add(1);
example.add(2);
example.add(3);
example.add(3);
所以我想让其他三个ArrayLists包含一个相同的值(其中只有一个值,ArrayList只有一个值)。
这可能吗?
答案 0 :(得分:0)
这是一种过滤掉元素的方法,实现:使用通用Map(在通用类中)来封装值。
这是如何布局的。使用要拆分的对象类型对其进行实例化。
public class UniqueSplitter<T> {
public Map<T, List<T>> filterOutElements(final List<?> theCandidateList) {
final Map<T, List<T>> candidateMap = new HashMap<>();
for(Object element : theCandidateList) {
if(candidateMap.containsKey(element)) {
candidateMap.get(element).add((T) element);
} else {
final List<T> elementList = new ArrayList<>();
elementList.add((T) element);
candidateMap.put((T)element, elementList);
}
}
return candidateMap;
}
}