total - sumatoria con for en java
Cómo sumar valores de Java Hashmap (3)
Definitivamente puedes hacerlo usando un for-loop
. Puede utilizar un conjunto de entradas:
for (Entry<String, Float> entry : map.entrySet()) {
sum += entry.getValue();
}
o en este caso solo:
for (float value : map.values()) {
sum += value;
}
Esta pregunta ya tiene una respuesta aquí:
Necesito algo de ayuda, estoy aprendiendo a manejar los mapas en Java y hoy intenté obtener la suma de los valores de un Hashmap pero ahora estoy atascado.
Estos son los valores del mapa que quiero sumar.
HashMap<String, Float> map = new HashMap<String, Float>();
map.put("First Val", (float) 33.0);
map.put("Second Val", (float) 24.0);
Asigne una pregunta adicional, ¿qué sucede si tengo 10 o 20 valores en un mapa? ¿Cómo puedo sumarlos a todos, debo hacer un "para"?
Un saludo y gracias por la ayuda.
Si necesita agregar todos los valores en un Map
, intente esto:
float sum = 0.0f;
for (float f : map.values()) {
sum += f;
}
Al final, la variable sum
contendrá la respuesta. Así que sí, para atravesar los valores de un Map
es mejor usar un bucle for
.
Float sum = 0f;
for (Float val : map.values()){
sum += val;
}
//sum now contains the sum!
Un bucle for
hecho sirve bien para el propósito previsto, aunque también podría usar un bucle while y un iterador ...