РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
290 of 1593 menu

Функция maps.DeleteFunc

Функция maps.DeleteFunc удаляет из карты все элементы, для которых переданная функция-предикат возвращает true. Первым параметром функция принимает карту для модификации, вторым - функцию проверки, которая принимает ключ и значение и возвращает bool.

Синтаксис

maps.DeleteFunc(m, func(k T, v U) bool)

где m - карта, которую нужно очистить, а func - функция-предикат, определяющая, какие элементы следует удалить.

Пример

Давайте удалим из карты все элементы с четными значениями:

package main import ( "fmt" "maps" ) func main() { m := map[string]int{ "a": 1, "b": 2, "c": 3, "d": 4, } maps.DeleteFunc(m, func(k string, v int) bool { return v%2 == 0 }) fmt.Println(m) }

Результат выполнения кода:

map[a:1 c:3]

Пример

Давайте удалим из карты все элементы с ключами, начинающимися на букву "b":

package main import ( "fmt" "maps" ) func main() { m := map[string]int{ "a": 1, "b": 2, "c": 3, "d": 4, } maps.DeleteFunc(m, func(k string, v int) bool { return k == "b" }) fmt.Println(m) }

Результат выполнения кода:

map[a:1 c:3 d:4]

Пример

Давайте удалим из карты все элементы, значения которых меньше или равны 10:

package main import ( "fmt" "maps" ) func main() { m := map[string]int{ "x": 5, "y": 15, "z": 25, } maps.DeleteFunc(m, func(k string, v int) bool { return v <= 10 }) fmt.Println(m) }

Результат выполнения кода:

map[y:15 z:25]

Смотрите также

  • функцию maps.Clear,
    которая удаляет все элементы из карты
  • функцию delete,
    которая удаляет один элемент по ключу
  • функцию maps.Keys,
    которая возвращает срез ключей карты
  • функцию maps.Values,
    которая возвращает срез значений карты
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить