Tabla Hash

Tengo un problema con la tabla Hash y espero que me puedas ayudar.
Necesito crear una tabla Hash, pero que contenga los siguientes campos:
- Código hash de la palabra
- Palabra
- Ocurrencia
En sí la clase Hashtable tiene dos campos,(o por lo menos yo así lo veo), que son el código hash y el objeto.
Alguien me dijo que debo crear otro objeto y ese asignárselo al objeto de la hash, pero no me quedó claro.

1 Respuesta

Respuesta
1
Bueno lo que te quisieron decir fue lo siguiente:
Supongamos que nuestro objeto que vamos a guardar en el Hashtable pertenece a una clase llamada Palabra con los atributos que tu mencionaste.
public class Palabra {
int codigo;
String palabra;
String ocurrencia;
//el constructor
public Palabra(int codigo, String palabra, String ocurrencia ){
this.codigo = codigo;
this.ocurrencia = ocurrencia;
this.palabra = palabra;
}
.....
}
Es importante que tengas en cuenta que el código debe ser único dentro del conjunto, es decir del Hastable, sino no funcionara.
Luego lo que debes hacer es usar el código de la palabra como el id para la misma palabra dentro del Hastable, así.
vamos a guardar un objeto palabra dentro del Hashtable.
Hastable tabla = new Hashtable();
Palabra p = new Palabra(1,"Arroz","o");
tabla.put(new Integer(p.codigo),p);
// Fíjate que cree un objeto Integer con el código ya que el id de un Hashtable debe ser un Objeto, y el segundo parámetro es la misma palabra
Ahora si queremos sacar una palabra del Hash debemos hacer el respectivo casting y proporcionar el id al método get, así:
Palabra p = (Palabra) tabla.get(new Integer(1));
// Aqui el Hash nos devolvera la palabra arroz porque su id es el codigo 1.
Bueno espero haber aclarado tus dudas, bye.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas