我正在寻找适合我需要的数据结构:
- 包含的元素必须是唯一的。
- 固定大小,即
false如果超出大小,add 应该返回(或抛出异常)。
额外的:
- 保持存储的元素有序。
我首先想到的是Set。覆盖例如的add方法TreeSet。或者使用装饰器模式。
有没有其他合适的课程可以减少我这边的编码和逻辑工作?
我正在寻找适合我需要的数据结构:
false如果超出大小,add 应该返回(或抛出异常)。额外的:
我首先想到的是Set。覆盖例如的add方法TreeSet。或者使用装饰器模式。
有没有其他合适的课程可以减少我这边的编码和逻辑工作?
扩展TreeSet覆盖add(),addAll()要查找的方法size()和添加的元素数量,还考虑到同步对多线程是严格的
还有另一种方法,您可以使用普通的 hashset 或 set 和 while write 方法来检查大小,如果大小超过 boolean 将返回 true 否则将返回false,并且可以在需要时做必要的事情。
public void isSetFull() {
// n is the max size you want for set
if (set.size() >= n) {
return true;
} else {
return false;
}