J'ai besoin d'aide, j'apprends par moi-même comment gérer les cartes en Java ando aujourd'hui, j'essayais d'obtenir la somme des valeurs d'un Hashmap mais maintenant je suis bloqué.
Ce sont les valeurs de carte que je veux additionner.
HashMap<String, Float> map = new HashMap<String, Float>();
map.put("First Val", (float) 33.0);
map.put("Second Val", (float) 24.0);
Ass une question supplémentaire, que se passe-t-il si j'ai 10 ou 20 valeurs dans une carte, comment puis-je les additionner, dois-je faire un "pour"?
Cordialement et merci pour l'aide.
Si vous devez ajouter all les valeurs dans un Map
, essayez ceci:
float sum = 0.0f;
for (float f : map.values()) {
sum += f;
}
À la fin, la variable sum
contiendra la réponse. Donc oui, pour parcourir les valeurs d'un Map
, il est préférable d'utiliser une boucle for
.
Float sum = 0f;
for (Float val : map.values()){
sum += val;
}
//sum now contains the sum!
Une boucle for
sert en effet bien à l'usage prévu, bien que vous puissiez également utiliser une boucle while et un itérateur ...
Vous pouvez certainement le faire en utilisant un for-loop
. Vous pouvez soit utiliser un jeu d'entrées:
for (Entry<String, Float> entry : map.entrySet()) {
sum += entry.getValue();
}
ou dans ce cas juste:
for (float value : map.values()) {
sum += value;
}