Hola, la verdad es que soy un tanto zoquete y no sé si esta duda se podrá responder por aquí, o este no es el sitio indicado.

Tengo que crear una lista Multiclave y aparte de tener muchos problemas en hacerla, mi principal problema y por el que pregunto es a la hora de crear el iterador.

Tengo creada esta clase para el iterador (que imagino que estará bien):

class Itr<E> implements Iterator<E>{

java.util.Stack<E> elementos;

public Itr(){
elementos = new java.util.Stack<E>();
}

public boolean hasNext(){
return !elementos.empty();
}

public E next(){
if (!elementos.empty()){
return elementos.pop();
}else{
return null;
}
}

public void remove(){
throw new UnsupportedOperationException();
}
}


Y ahora tengo que desarrollar el siguiente método:

/**
* Devuelve un iterador sobre la lista
* @param pos posicion de la clave sobre la cual se va a devolver un iterador
*/
public java.util.Iterator iterator(int pos);



Y he intentado hacerlo pero me he perdido. Tengo que emplear la clase que he creado? Imagino que si, pero como?
He puesto aquí el iterador de la Lista MultiClave, pero he estado probando y ni siquiera me sale bien el de la lista normal :S

Igual es una chorrada, o igual tengo todo mal, pero...alguien me da una ayuda, o me dice como puedo hacerlo (o donde puedo mirarlo)



GRACIAS.