java创建有限哈希集
所以,我试图创建有限的HashSet
,所以每当LimitedHashSet
超过1024个元素时,它就会抛出一个Error
,不要问,指令。
这是我到目前为止的代码
import java.util.HashSet;
public class LimitedHashSet<E> extends HashSet<E>{
public LimitedHashSet(){
super();
}
@Override
public int size() {
return super.size();
}
private class LimitedHashSetError{
LimitedHashSetError(){
if (size() > 1024){
throw new Error("LimitedHashSetError");
}
}
}
public static void main(String[] args) {
LimitedHashSet<Integer> lhs = new LimitedHashSet<>();
for (int i = 0; i < 1026 ; i++) {
lhs.add(i);
}
}
}
然而,什么也没有发生
# 1 楼答案
你应该做:
# 2 楼答案
你从不实例化之后调用的检查方法:
LimitedHashSetError
,所以你从不检查大小。我更喜欢在每次^{# 3 楼答案
您应该重写类中的两个方法
addAll
和add
: