Как суммировать значения из Java Hashmap
Мне нужна помощь, я сам изучаю, как работать с картами в Java и сегодня, я пытался получить сумму значений из Hashmap, но теперь Im застрял.
Это значения карты, которые я хочу суммировать.
HashMap<String, Float> map = new HashMap<String, Float>();
map.put("First Val", (float) 33.0);
map.put("Second Val", (float) 24.0);
Возьмем дополнительный вопрос, что, если у меня есть 10 или 20 значений на карте, как я могу суммировать их все, мне нужно сделать "для"?
С уважением и благодарностью за помощь.
Ответы
Ответ 1
Если вам нужно добавить все значения в Map
, попробуйте следующее:
float sum = 0.0f;
for (float f : map.values()) {
sum += f;
}
В конце, переменная sum
будет содержать ответ. Так что да, для прохождения значений Map
лучше всего использовать цикл for
.
Ответ 2
Float sum = 0f;
for (Float val : map.values()){
sum += val;
}
//sum now contains the sum!
A for
цикл действительно хорошо работает по назначению, хотя вы также можете использовать цикл while и итератор...
Ответ 3
Вы можете сделать это с помощью for-loop
. Вы можете использовать набор записей:
for (Entry<String, Float> entry : map.entrySet()) {
sum += entry.getValue();
}
или в этом случае просто:
for (float value : map.values()) {
sum += value;
}