Пустой идентификатор _

Пустой идентификатор _ в Go представляет собой специальный идентификатор, который используется для игнорирования значений при множественном присваивании. Он позволяет пропустить переменную, которая не будет использоваться в программе, что помогает избежать ошибок компиляции из-за неиспользуемых переменных. Пустой идентификатор может быть использован в различных контекстах, включая присваивание значений, проверку интерфейсов и импорт пакетов.

Синтаксис

go_ = value

Пример

Давайте рассмотрим пример использования пустого идентификатора для игнорирования возвращаемого значения функции:

gopackage main

import "fmt"

func getData() (int, string) {
  return 42, "hello"
}

func main() {
  _, str := getData()
  fmt.Println(str)
}

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

go"hello"

Пример

Давайте рассмотрим использование пустого идентификатора в цикле для игнорирования индекса при переборе слайса:

gopackage main

import "fmt"

func main() {
  nums := []int{1, 2, 3, 4, 5}

  for _, num := range nums {
    fmt.Println(num)
  }
}

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

go1
2
3
4
5

Пример

Давайте рассмотрим использование пустого идентификатора для проверки соответствия типа интерфейсу:

gopackage main

type MyInterface interface {
  Method()
}

type MyStruct struct{}

func (m MyStruct) Method() {}

var _ MyInterface = MyStruct{}

func main() {
  println("Interface check passed")
}

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

go"Interface check passed"

Пример

Давайте рассмотрим использование пустого идентификатора для импорта пакета только ради его побочных эффектов:

gopackage main

import (
  _ "fmt"
  "log"
)

func main() {
  log.Println("Imported fmt for side effects only")
}

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

go"Imported fmt for side effects only"

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

  • конструкцию if,
    которая используется для условного выполнения кода
  • цикл for,
    который используется для повторения блока кода
  • конструкцию switch,
    которая используется для множественного выбора
  • оператор return,
    который возвращает значение из функции