HashMap es parte del marco de colecciones de Java. Almacena los datos en forma de pares clave-valor. Se puede acceder a estos valores del HashMap usando sus respectivas claves o se puede acceder a los pares clave-valor usando sus índices (de tipo Integer). HashMap es similar a Hashtable en Java. La principal diferencia entre HashTable y HashMap es que Hashtable está sincronizado pero HashMap no. Además, un HashMap puede tener una clave nula y cualquier número de valores nulos . El orden de inserción no se conserva en HashMap. En un HashMap, las claves y los valores se pueden agregar usando HashMap.put()método. También podemos convertir dos arreglos que contienen claves y valores en un HashMap con sus respectivas claves y valores.
Ejemplo:
keys = {1,2,3,4,5} values = {"Welcome","To","Geeks","For","Geeks"} HashMap = {1=Welcome, 2=To, 3=Geeks, 4=For, 5=Geeks}
Código
Java
// Java program to convert two arrays containing keys and // values into a HAshMap import java.util.*; import java.io.*; class GFG { public static HashMap map(Integer[] keys, String[] values) { // two variables to store the length of the two // given arrays int keysSize = keys.length; int valuesSize = values.length; // if the size of both arrays is not equal, throw an // IllegalArgumentsException if (keysSize != valuesSize) { throw new IllegalArgumentException( "The number of keys doesn't match the number of values."); } // if the length of the arrays is 0, then return an // empty HashMap if (keysSize == 0) { return new HashMap(); } // create a new HashMap of the type of keys arrays // and values array HashMap<Integer, String> map = new HashMap<Integer, String>(); // for every key, value for (int i = 0; i < keysSize; i++) { // add them into the HashMap by calling the // put() method on the key-value pair map.put(keys[i], values[i]); } // return the HashMap return map; } // Driver method public static void main(String[] args) { // create an array for keys Integer[] keys = { 1, 2, 3, 4, 5 }; // create an array for value String[] values = { "Welcome", "To", "Geeks", "For", "Geeks" }; // call the map() method over the keys[] array and // values[] array Map m = map(keys, values); // print the returned map System.out.println(m); } }
{1=Welcome, 2=To, 3=Geeks, 4=For, 5=Geeks}