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

Функция clear

Функция clear удаляет все элементы из слайса, устанавливая их в нулевые значения для соответствующего типа. Важно: функция не изменяет длину и емкость слайса, а лишь обнуляет значения элементов. В качестве единственного параметра функция принимает слайс, который нужно очистить.

Синтаксис

clear(s)

Пример

Давайте очистим слайс строк, состоящий из пяти элементов:

package main import "fmt" func main() { s := []string{"a", "b", "c", "d", "e"} clear(s) fmt.Println(s) }

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

[ ]

Как видите, все элементы слайса стали пустыми строками, а длина и емкость остались прежними (5).

Пример

Теперь очистим слайс целых чисел:

package main import "fmt" func main() { s := []int{1, 2, 3, 4, 5} clear(s) fmt.Println(s) }

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

[0 0 0 0 0]

Все элементы слайса стали нулями, так как нулевое значение для типа int — это 0.

Пример

Очистим слайс с произвольной структурой:

package main import "fmt" type Person struct { Name string Age int } func main() { s := []Person{{"Alice", 30}, {"Bob", 25}} clear(s) fmt.Println(s) }

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

[{ 0} { 0}]

Каждый элемент структуры обнулен: строки стали пустыми, числа — нулями.

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

  • функцию len,
    которая возвращает длину слайса
  • функцию cap,
    которая возвращает емкость слайса
  • функцию append,
    которая добавляет элементы в конец слайса
  • функцию copy,
    которая копирует элементы между слайсами
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить