Oppgave 1
public int antall() { return antall; }
Oppgave 2
public void nullstill() { for (int i = 0; i < antall; i++) a[i] = null; antall = 0; }
Oppgave 3
private class TabellBeholderIterator implements Iterator<T> { private int denne = antall - 1; // instansvariabel private boolean removeOK = false; // instansvariabel public boolean hasNext() // sjekker om det er flere igjen { return denne >= 0; // sjekker verdien til denne } public T next() { if (!hasNext()) throw new NoSuchElementException("Tomt eller ingen verdier igjen!"); T temp = a[denne]; // henter aktuell verdi denne--; // flytter indeksen removeOK = true; // nå kan remove() kalles return temp; // returnerer verdien } public void remove() { if (!removeOK) throw new IllegalStateException("Ulovlig tilstand!"); removeOK = false; // remove() kan ikke kalles på nytt // verdien i posisjon denne - 1 skal fjernes siden den ble returnert // i det siste kallet på next(), verdiene fra og med denne flyttes // derfor en enhet mot venstre antall--; // en verdi vil bli fjernet for (int i = denne + 1; i < antall; i++) { a[i] = a[i+1]; // verdiene flyttes } a[antall] = null; // verdien som lå lengst til høyre nulles } } // class TabellBeholderIterator