Java - Ayuda con listas

 
Vista:

Ayuda con listas

Publicado por Maria (1 intervención) el 19/11/2013 00:43:29
Mi problema es que hasta hace poco el profesor dijo que solo podiamos almacenar datos con arreglos, ya que no nos habia enseñado nada mas, por ejemplo, si yo tengo un array vectorUsuario de la clase Usuario, y ese Usuario tiene un nombre que se puede obtener con un metodo de la misma clase Usuario llamado getNombre, yo para obtener el nombre del usuario en la posicion 2 (asumiendo que exista) tendria que hacer es algo como:

vectorUsuario[2].getNombre();

Pero ahora el profesor nos enseño listas y quiere que las implementemos, entonces si yo tengo una LinkedList listaUsuarios (la declare como LinkedList<Usuario> listaUsuarios= new LinkedList<Usuario>();), si yo hago algo como

listaUsuarios.get(2).getNombre()

Me da error, de seguro hice una burrada, pero quiero saber como puedo usar los metodos de un objeto en cierta posicion de la lista. Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Ayuda con listas

Publicado por UnoPorAhi (128 intervenciones) el 19/11/2013 08:56:38
Estudia la diferencia entre arrays y listas enlazadas.
http://stackoverflow.com/questions/322715/when-to-use-linkedlist-over-arraylist

Veras que para lo que quieres hacer es mas apropiado un ArrayList.

En cualquier caso ese get te deberia funcionar, por lo que el error debe ser por otra cosa. Pero si no pones el error que te da....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda con listas

Publicado por Martin (3 intervenciones) el 19/11/2013 16:43:17
El problema debe ser bien cuando creas el objeto, o el elemento al que hacés referencia no existe, probé hacerlo y no me dió ningún error,

LinkedList<Usuario> listaUsuarios = new LinkedList<Usuario>();

//Creás el objeto (con todos sus atributos).
Usuario usuario1 = new Usuario("nombre1");
//Agregás la referencia al objeto.
listaUsuarios.add(usuario1);
//Mostrás nombre en consola.
System.out.println(listaUsuarios.get(0).getNombre());

//O bien podes crear el objeto en la lista.
Usuario usuario2;
listaUsuarios.add(usuario2 = new Usuario("nombre2"));
System.out.println(listaUsuarios.get(1).getNombre());


Metodo getNombre de la clase Usuario:
public String getNombre() {
return this.nombre;
}

Acordate que si pones esto
listaUsuarios.get(1).getNombre();

así suelto no te sirve de nada, debés asignarselo a una variable o bien imprimirlo en consola.

Y eso sería todo, a mí me funcionó:D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar