University stuff.
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import java.util.ArrayList;
  2. import java.util.Iterator;
  3. class Tabell<E> implements AbstraktTabell<E> {
  4. private E[] arr;
  5. Tabell(int len) {
  6. arr = (E[])(new Object[len]);
  7. }
  8. public E hent(int index) {
  9. return arr[index];
  10. }
  11. public boolean settInn(int index, E val) {
  12. //Expand table automatically if necessary
  13. if (index >= arr.length) {
  14. int len = arr.length;
  15. while (len <= index)
  16. len *= 2;
  17. E[] nw = (E[])(new Object[len]);
  18. for (int i = 0; i < arr.length; ++i) {
  19. nw[i] = arr[i];
  20. }
  21. arr = nw;
  22. }
  23. try {
  24. arr[index] = val;
  25. } catch (Exception ex) {
  26. return false;
  27. }
  28. return true;
  29. }
  30. class ListIterator implements Iterator<E> {
  31. private int index = 0;
  32. public boolean hasNext() {
  33. return index < arr.length;
  34. }
  35. public E next() {
  36. E val = arr[index++];
  37. while (index < arr.length && arr[index] == null)
  38. index += 1;
  39. return val;
  40. }
  41. ListIterator() {
  42. while (index < arr.length && arr[index] == null)
  43. index += 1;
  44. }
  45. };
  46. public Iterator<E> iterator() {
  47. return new ListIterator();
  48. }
  49. }