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

Junior
176 просмотров
AFK Offer AI

Выведет 0. Обращение к несуществующему ключу map возвращает zero value типа, а не panic или error. Для проверки наличия: v, ok := m["b"]; if !ok { ... }. Это может быть багом если zero value валиден: m["score"] может быть 0 потому что ключа нет или потому что значение реально 0. Всегда используй comma-ok для проверки.

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

Как описать инфру для Go сервиса?