All pastes #2053425 Raw Edit

Mine

public text v1 · immutable
#2053425 ·published 2011-05-03 11:15 UTC
rendered paste body

PseudoList<Integer> pl = new PseudoList<Integer>(new Integer[] {1,2,3});

//works:
for (Iterator<Integer> iter = pl.iterator(); iter.hasNext(); ) {
    Integer var = iter.next();
    System.out.println(var);
}
// doesn't work:
for (Integer i: pl) {
	System.out.println(i);
}


//classes:

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;


class PseudoIterator<T> implements Iterator {
	T[] list;
	Integer indx;
	public PseudoIterator(T[] original) {
		list = original;
		indx = -1;
	}
	@Override
	public boolean hasNext() {
		return indx+1 < list.length;
	}

	@Override
	public T next() {
		return list[++indx];
	}

	@Override
	public void remove() {
		// TODO Auto-generated method stub
		
	}
	
}

public class PseudoList<T> implements Collection {
	T[] list;
	
	public PseudoList(T[] original) {
		list = original;
	}

	@Override
	public Iterator iterator() {
		// TODO Auto-generated method stub
		return new PseudoIterator<T>(this.list);
	}
	
	@Override
	public boolean add(Object arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean addAll(Collection arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public void clear() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public boolean contains(Object arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean containsAll(Collection arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean isEmpty() {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean remove(Object arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean removeAll(Collection arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public boolean retainAll(Collection arg0) {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public int size() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public Object[] toArray() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Object[] toArray(Object[] arg0) {
		// TODO Auto-generated method stub
		return null;
	}
	
}