@Override
    public Iterator<E> iterator() {
        return listIterator();
    }
Returns a current snapshot of this List's backing array that
 is guaranteed not to change through further List manipulation.
 Changes to this array may or may not be reflected in the list and
 should be avoided.

@return either the pre-existing array or a new one
jme3-core/src/main/java/com/jme3/util/SafeArrayList.java