Ключевое слово «default» в Go используется в двух разных контекстах: как регистр в операторе переключения и как значение в составном литерале. Я объясню оба варианта использования и приведу примеры кода для каждого.
- Оператор Switch:
Случай «по умолчанию» в операторе переключателя выполняется, когда ни одно из других условий случая не выполняется. Вот пример:
package main
import "fmt"
func main() {
num := 3
switch num {
case 1:
fmt.Println("One")
case 2:
fmt.Println("Two")
default:
fmt.Println("Default case")
}
}
В этом примере, если значение numне равно ни 1, ни 2, будет выполнен вариант «по умолчанию» и напечатан «Регистр по умолчанию».
- Составной литерал.
Ключевое слово «default» можно использовать при инициализации составного литерала, такого как структура или массив, чтобы установить значения по умолчанию для полей или элементов. Вот пример:
package main
import "fmt"
type Person struct {
Name string
Age int
IsAdult bool
}
func main() {
defaultPerson := Person{
Name: "John Doe",
Age: 30,
IsAdult: true,
}
emptyPerson := Person{}
// Default values for each field
fmt.Println(defaultPerson)
fmt.Println(emptyPerson)
}
В этом примере defaultPersonинициализируется определенными значениями, а emptyPersonинициализируется с использованием нулевых значений по умолчанию для каждого поля.