From 1619921f6acda0b328f10b34339c2ffd7f06d238 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Sat, 9 Jan 2016 11:45:16 +0100 Subject: add engine/util/ArrayListIt --- .../asynk/rustanddust/engine/util/ArrayListIt.java | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 core/src/ch/asynk/rustanddust/engine/util/ArrayListIt.java diff --git a/core/src/ch/asynk/rustanddust/engine/util/ArrayListIt.java b/core/src/ch/asynk/rustanddust/engine/util/ArrayListIt.java new file mode 100644 index 0000000..c9128f2 --- /dev/null +++ b/core/src/ch/asynk/rustanddust/engine/util/ArrayListIt.java @@ -0,0 +1,49 @@ +package ch.asynk.rustanddust.engine.util; + +import java.util.ArrayList; +import java.util.Iterator; + +public class ArrayListIt extends ArrayList implements Iterator, Iterable +{ + private int i; + private int s; + + public ArrayListIt() + { + super(); + } + + public ArrayListIt(int n) + { + super(n); + } + + @Override + @SuppressWarnings("unchecked") + public Iterator iterator() + { + this.i = 0; + this.s = size(); + return (Iterator) this; + } + + @Override + public boolean hasNext() + { + return (i < s); + } + + @Override + public E next() + { + E e = get(i); + i += 1; + return e; + } + + @Override + public void remove() + { + throw new RuntimeException("Iterator.remove is not allowed in here bitch!"); + } +} -- cgit v1.1-2-g2b99