Что выведет: m := map[string]int{"a":1}; for k, v := range m { fmt.Println(k, v); m["b"] = 2 }?

Middle
109 просмотров
AFK Offer AI

Недетерминировано. Может вывести только "a 1" или "a 1" и "b 2". Добавление элемента во время итерации по map не гарантирует что новый элемент будет обработан. Спецификация Go явно говорит: порядок итерации не определён, и новые ключи могут появиться или нет. Удаление тоже безопасно — удалённый элемент не будет обработан.

Следующий вопрос

Как ты справляешься с большим количеством meetings?