Map<String, Integer> works = new HashMap<>();
for (int i = 0; i < 10; i ++) {
for (int j = 0; j < 10; j ++){
works.put("wor" + i, j + 495);
}
}
ВЫВОВ В КОНСОЛЬ:
wor1 504
wor0 504
wor9 504
wor8 504
wor7 504
wor6 504
wor5 504
wor4 504
wor3 504
wor2 504Василь
3 уровень
Кто подскажет, почему карту Map нельзя корректно заполнить таким образом?
Комментарии (8)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #2322530
25 февраля 2021, 08:12
что значит корректно. что он у тебя выводится в другом порядке потом? HashMap не хранит порядок добавления элементов. хочешь сохранить порядок используй LinkedHashMap
0
Васильtrainee в Kindgeek
25 февраля 2021, 08:35
Я прикрепил вывод в консоль.
Меня порядок не интересует.
Для заполнения значения я сделал вложенный цикл. Но значение не меняется, а во всех случаях == 504.
0
hidden #2322530
25 февраля 2021, 08:48
ты перезаписываешь элементы потому что
у тебя значение во втором цикле меняется, а ключ нет
+1
Васильtrainee в Kindgeek
25 февраля 2021, 08:50
а как нужно тогда? Подскажи пожалуйста если можешь.
0
hidden #2322530
25 февраля 2021, 08:52
а что ты хочешь получить. словарь из 100 элементов?
0
Васильtrainee в Kindgeek
25 февраля 2021, 08:54
ожидал увидеть что-то типа:
wor1 496
wor0 495
wor9 504
wor8 503
wor7 502
wor6 501
wor5 500
wor4 499
wor3 498
wor2 497
Чтоб значение тоже увеличивалось на 1
0
hidden #2322530
25 февраля 2021, 08:55
тогда тебе нужен один цикл всего лишь.
+2
Васильtrainee в Kindgeek
25 февраля 2021, 08:57
принял) спасибо
0