Привет, я должен реализовать мультимножество.Я использовал хэш-набор, и внутри своего класса я создал внутренний класс объектов с переменными экземпляра одного типа E общего и одного типа int для подсчета вхождений.У меня есть метод add, который должен добавить объект в мультимножестве.Практически, вызывая внутренний конструктор класса каждый раз, когда он перезаписывает объект.Он не кладет больше одного в мой контейнер.Как это возможно? введите описание изображения здесь
public int add(E element, int occurrences) {
// TODO Implementare
int b=0;
if (element==null) throw new NullPointerException();
if (occurrences<0 || occurrences ==Integer.MAX_VALUE) throw new IllegalArgumentException("");
boolean g=false;
for (Element x: contenitore) {
if (x.getElement().equals(element)) {
x.setOccorrenze(occurrences);
b=x.getOccorrenze()-occurrences;
}}
this.contenitore.add(new Element(element,occurrences));
b=0;
return b;
}
public class MyMultiset<E> implements Multiset<E> {
// TODO Inserire le variabili istanza che servono
private Set<Element> contenitore;
// TODO Inserire eventuali classi interne per gli elementi del multinsieme e
// per l'iteratore.
Элемент класса {
private E valore;
private int occorrenze;
public Element( E valore, int occorrenze) {
this.valore=valore;
enter code here
this.occorrenze=occorrenze;
}
public E getElement() {
return valore;
}
public int getOccorrenze() {
return occorrenze;
enter code here
}
public void setOccorrenze(int v) {
occorrenze+=v;
}
}