Problema con Parametros

Iniciado por Arobavx, 26 Octubre 2010, 05:08 AM

0 Miembros y 1 Visitante están viendo este tema.

Arobavx

Hola gente necesito ayuda con esto, por ejemplo si tengo una clase asi.

Código (java) [Seleccionar]
public class Libro {
private String autor ;
private String editorial;
private String nombre;
public Libro(String autor , String editorial, String nombreLib){
this.autor = autor;
this.editorial = editorial;
this.nombre = nombreLib;

}
}


y otra clase con un hashmap


Código (java) [Seleccionar]
import java.util.*;
public class Biblioteca {
private HashMap biblioteca;
/**
* Constructor de clase
* @param libroNuevo
* @param codigo
*/
public Biblioteca(Libro libroNuevo, String codigo){
biblioteca = new HashMap();
}

/**
* clase agrega Libros con  su codigo respectivo
* @param agregado
* @param codigo
*/
public void agregarLibro(Libro agregado, String codigo){
biblioteca.put(codigo, agregado);
}

/**
*
* @param codigo
*/
public void borrarLibro(String codigo){
biblioteca.remove(codigo);
System.out.println("Libro removido exitosamente");
}
/**
* lista los libros que estan en la biblioteca
*/
public void listarLibros(){
Iterator guia = biblioteca.values().iterator();
while(guia.hasNext()){
System.out.println(guia.next());
}

}

public void buscar(String key){
Iterator hilo = biblioteca.keySet().iterator();
while(hilo.hasNext()){
if( hilo.next().equals(key)){
System.out.println("existe");
break;
} else {
System.out.println("NO esta");
}
}
}
}


mi problema es que al tener cargado el hashmap con varios libros y quiero acceder al nombre del autor de cualquier libro que busque mediante el codigo. NO se que mas probar.  :huh: desde ya gracias..

Saludos

Leyer

#1
No es necesario que recorras todo el hashMap, ya que el hashMap tiene un método    containsKey(key) que te permite saber si cierto dato esta agregado en el hashMap.

Podrías especificarle al hashMap el tipo de dato a almacenar y key que usara si es String o int etc..HashMap<String, Libro>.

También tienes que crear getter y setter a las variables privadas de la clase Libro, para que puedas acceder a estas cuando buscas un libro en el hashMap.

Un saludo.