Iterator<V> () { return new MyIterator<V>() { @Override V fieldElement(int offset) { return offset == 0 ? v1 : offset == 1 ? v2 : v3; } @SuppressWarnings("unchecked") @Override V tableElement(int offset) { return (V)data[offset + 1]; } }; }