import java.util.Collection;
import java.util.HashSet;
public class CountableHashSet<E> extends HashSet<E> {
private int count = 0;
public CountableHashSet(){}
public CountableHashSet(int initCap, float loadFactor) {
super(initCap, loadFactor);
}
@Override
public boolean add(E e) {
count++;
return super.add(e);
}
@Override
public boolean addAll(Collection<? extends E> collection) {
count += collection.size();
return super.addAll(collection);
}
public int getCount() {
return count;
}
}
CountableHashSet<String> s = new CountableHashSet<>();
s.addAll(Arrays.asList("Виталик", "Витя", "Максим"));
Считает и записывает в поле класса count
количество добавленных элементов в HashSet
, а больше и ничего. Все остальное делает отцовский класс HashSet
из пакета java.util
.
Странно только, что нету декрементации при удалении.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Интересует способ того, как сделать возможность поворачивать карточку свайпом, те
Щупаю Vaadin 10Если я правильно понял из туториала, при пользовании Spring-бинами нам нужно определить их область применения в Vaadin — VaadinSessionScope...
Написал Discord-бота на JavaПротестировал, но в какой-то момент мой токен перехватили и мой канал взломали и удалили все