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

Тип any

Тип any в Go является псевдонимом для interface{} и позволяет хранить значения любого типа данных. Он был введен в версии Go 1.18 для упрощения кода и улучшения читаемости. Тип any может принимать как простые типы (числа, строки), так и сложные структуры данных. При работе с any необходимо использовать утверждение типа (type assertion) для извлечения исходного значения.

Синтаксис

var value any

Пример

Давайте объявим переменную типа any и присвоим ей значение строки:

package main import "fmt" func main() { var value any value = "abcde" fmt.Println(value) }

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

"abcde"

Пример

Давайте присвоим переменной типа any значение целого числа:

package main import "fmt" func main() { var value any value = 42 fmt.Println(value) }

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

42

Пример

Давайте присвоим переменной типа any значение слайса:

package main import "fmt" func main() { var value any value = []int{1, 2, 3, 4, 5} fmt.Println(value) }

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

[1 2 3 4 5]

Пример

Давайте выполним утверждение типа для извлечения значения из переменной типа any:

package main import "fmt" func main() { var value any value = "abcde" str, ok := value.(string) if ok { fmt.Println("String value:", str) } else { fmt.Println("Not a string") } }

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

"String value: abcde"

Пример

Давайте используем конструкцию switch для проверки типа значения в переменной any:

package main import "fmt" func main() { var value any value = 42 switch v := value.(type) { case string: fmt.Println("String:", v) case int: fmt.Println("Integer:", v) case []int: fmt.Println("Slice of ints:", v) default: fmt.Println("Unknown type") } }

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

"Integer: 42"

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

  • тип interface{},
    который является исходным типом для any
  • тип comparable,
    который ограничивает типы, поддерживающие сравнение
  • тип string,
    который представляет строковые значения
  • тип int,
    который представляет целочисленные значения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить