使用HashSet实现Multiset

时间:2018-11-21 10:34:35

标签: java eclipse

嗨,我必须实现一个多集。我使用了哈希集,并在类内部创建了一个对象内部类,其中,一个实例类型为E泛型,另一个类型为int作为实例变量来计算出现次数。我有一个add方法,需要在多集合内添加一个对象。实际上,每当内部类构造函数覆盖对象时,就调用它。他没有在我的容器中放多个。怎么可能?enter image description here

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;
    }
 }

0 个答案:

没有答案