我想在Treeset中使用add()
方法实现union。
我这样写:
Set<Integer> union(Set<Integer> a, Set<Integer> b) {
Treeset result = new Treeset();
for(Integer i:a) {
result.add(i);
}
for(Integer i:b) {
result.add(i);
}
return result;
}
这是我的家庭作业之一,我们的教授说我们不能使用add()
方法,那么,我如何使用其他方式来实现它并获得相同的结果呢?
答案 0 :(得分:0)
在单个元素上使用al
是......慢。它也不是最好的风格。
如果我这样做,无论如何我都会使用add
,一次性添加我关心的所有内容。
addAll
请确保您没有使用public Set<Integer> union(final Set<Integer> left, final Set<Integer> right) {
final Set<Integer> result = new TreeSet<>(left);
result.addAll(right);
return result;
}
实例创建原始类型。以上内容避免了这种情况;如果您的代码是TreeSet
而不是TreeSet
,那么您的代码(可能)会创建一个代码。