Java : HashMap
Un HashMap
es una implementación de la interfaz Map
en Java que permite almacenar elementos en pares clave-valor. Internamente utiliza una tabla para garantizar una búsqueda y acceso muy eficiente. Internamente utiliza una tabla hash para garantizar una búsqueda y acceso muy eficiente, generalmente en tiempo constante.
Para comenzar, creamos una simple clase Producto
que usaremos pronto para almacenar objetos dentro de un HashMap
.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class Producto {
private String nombre;
private String descripcion;
private List<String> etiquetas;
public Producto(String nombre, String descripcion, List<String> etiquetas) {
this.nombre = nombre;
this.descripcion = descripcion;
this.etiquetas = etiquetas;
}
public String getNombre() {
return nombre;
}
public String getDescripcion(){
return descripcion;
}
public List<String> getEtiquetas() {
return etiquetas;
}
@Override
public String toString() {
return nombre + " - " + descripcion + " [" + String.join(", ", etiquetas) + "]";
}
}
Supongamos que queremos almacenar varios productos, usando su nombre como clave en un HashMap
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.*;
public class Inventario {
public static void main(String[] args) {
Map<String, Producto> catalogo = new HashMap<>();
Producto p1 = new Producto("Café Premiun", "Granos seleccionados", Arrays.asList("bebida", "energia", "natural"));
Producto p2 = new Producto("Notebook", "Laptop ultradelgada 14 pulgadas", Arrays.asList("tecnología", "portátil", "computación"));
catalogo.put(p1.getNombre(), p1);
catalogo.put(p2.getNombre(), p2);
// Buscar producto por clave
Producto buscado = catalogo.get("Café Premiun");
// Verificar existencia
if (catalogo.containsKey("Notebook")) {
System.out.println("El producto 'Notebook' está en el catalogo");
}
}
}
Esta entrada está licenciada bajo CC BY 4.0 por el autor.