Uso Java.Obtener el iterador de la lista de Java para devolver algo que no sea el Objeto
Ya tengo una clase para un objeto personalizado llamado "Asunto".
Tengo otra clase que solo contiene una lista vinculada de objetos de asunto. (llamado subjectsList)
Escribí uno de los métodos (llamado "getSubject()") en la clase subjectsList que pretende devolver el objeto Subject a un índice específico en la Lista Vinculada. Para hacer esto, utilicé un ListIterator. Crearía un ListIterator en un índice dado en LinkedList y usaría el método .next().
Sin embargo, el método .next() en un ListIterator solo devuelve un java.lang.Object, aunque quiero que devuelva un objeto Subject.
¿Cómo obtengo ListIterator.next() para devolver un objeto Subject?
He intentado bajar un tema pero esto parece fallar, y he leído en alguna parte que no se pueden derribar objetos no relacionados.
Ésta es mi clase subjectsList:
import java.util.*;
public class subjectsList
{
//my LinkedList of Subject objects and a ListIterator
private LinkedList<Subject> l;
private ListIterator itr;
//constructor that simply creates a new empty LinkedList
public subjectsList()
{
l = new LinkedList();
}
//Method to return the Subject object at a specific index in the LinkedList
public Subject getSubject(byte index)
{
itr = l.listIterator(index);
return itr.next();
}
//Method to add a new Subject object to the LinkedList
public void addSubject(String nameInput, byte levelInput)
{
l.addLast(new Subject(nameInput, levelInput));
}
//Method to remove the Subject object at a specific index in the LinkedList
public void removeSubject(byte index)
{
itr = l.listIterator(index);
itr.next();
itr.remove();
}
}
El método en cuestión es el método "getSubject()".
en Java es la convención para comenzar a nombres de clase con una letra mayúscula. Eso también hace que sea más fácil para otras personas leer tu código. – extraneon
Gracias por señalar eso. – Joshua
¿Por qué realmente necesitas ese 'ListIterator'? ¿Qué pasa con 'List.get (index)' y 'List.remove (index)'? – whiskeysierra