Оператор Switch в Go

Зарегистрируйтесь и зарабатывайте 1000$ в день ⋙

В Golang, как и в большинстве других языков программирования, есть оператор switch . Оператор switch в Golang  позволяет вычислять переменную или выражение в нескольких случаях и часто используется, когда написание нескольких операторов if-else делает код некрасивым и повторяющимся.

Оператор Switch в Go

В Go оператор switch представляет собой многонаправленный оператор ветвления, который эффективно направляет выполнение на основе значения (или типа) выражения. В Go существует два основных типа операторов switch :

  • Переключатель выражений
  • Тип переключателя

Например:

package main
import "fmt"

func main() {
    day := 4
    switch day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Синтаксис оператора switch в Golang

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:                                                          # Expression Switch
    // Khối code
default:
    // Khối code
}

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:                                                                    # Type Switch
    // Khối code
default:
    // Khối code
}

Переключатель выражений

Expression Switch оценивает выражение и переключается на случай на основе значения этого выражения. Если выражение не у��азано, по умолчанию используется значение true .

Синтаксис

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:
    // Khối code
default:
    // Khối code
}

optstatement: Необязательный оператор (например, объявление переменной).
optexpression: Необязательное выражение (если не указано, по умолчанию принимается значение true ).

Пример с необязательной командой

Здесь вводится необязательный оператор, объявляющий переменную дня . Затем оператор switch оценивает день в соответствии с различными случаями.

package main
import "fmt"
func main() {
    switch day := 4; day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Результат:

Thursday

Пример с необязательным выражением

Если выражение не указано, оператор switch в Golang будет считать, что выражение истинно. Это позволяет нам использовать булевы условия в операторах case.

package main
import "fmt"

func main() {
    day := 4

    switch {
    case day == 1:
        fmt.Println("Monday")
    case day == 4:
        fmt.Println("Thursday")
    case day > 5:
        fmt.Println("Weekend")
    default:
        fmt.Println("Invalid day")
    }
}

Результат

Thursday

Тип переключателя

Type Switch используется для перехода по типу значения интерфейса, а не по его значению. Это особенно полезно при работе с переменными неизвестного типа.

Синтаксис

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:
    // Khối code
default:
    // Khối code
}

Например:

В этом примере используется та же переменная day , но заключенная в interface{} для иллюстрации приведения типов.

package main
import "fmt"
func main() {
    var day interface{} = 4
    switch v := day.(type) {
    case int:
        switch v {
        case 1:
            fmt.Println("Monday")
        case 2:
            fmt.Println("Tuesday")
        case 3:
            fmt.Println("Wednesday")
        case 4:
            fmt.Println("Thursday")
        case 5:
            fmt.Println("Friday")
        default:
            fmt.Println("Invalid day")
        }
    default:
        fmt.Printf("Unknown type: %T\n", v)
    }
}

Результат:

Thursday
Sign up and earn $1000 a day ⋙

Leave a Comment

Ключевые слова в Go

Ключевые слова в Go

Ключевое слово. Ключевые слова — это слова в языке, которые используются для обозначения какого-либо внутреннего процесса или представляют собой какое-либо предопределенное действие. Вот что вам нужно знать о ключевых словах в Golang.

Типы данных в Golang

Типы данных в Golang

Тип данных определяет тип данных, которые может содержать допустимая переменная Go. В языке Go типы делятся на четыре категории следующим образом:

Аргументы функций в Golang

Аргументы функций в Golang

Go поддерживает два основных способа передачи аргументов: передача по значению и передача по ссылке. Go по умолчанию использует передачу по значению.

Функция, возвращающая несколько значений в Golang

Функция, возвращающая несколько значений в Golang

В языке Go разрешено возвращать несколько значений из функции с помощью оператора return. Другими словами, в функции оператор return может возвращать несколько значений.

Случаи, которые следует знать при использовании операторов выбора в Golang

Случаи, которые следует знать при использовании операторов выбора в Golang

В этой статье мы узнаем, как использовать регистр по умолчанию, чтобы избежать взаимоблокировки. Но сначала давайте выясним, что такое случай взаимоблокировки при использовании команды select в Golang?

Анонимные структуры и поля в Golang

Анонимные структуры и поля в Golang

Анонимные структуры в Golang — это временные структуры без имен, используемые для одноразовых целей, в то время как анонимные поля допускают встраивание неименованных полей.

Как использовать Руну в Golang

Как использовать Руну в Golang

Что такое руны в языке Голанг? Как использовать руну в Golang? Статья даст вам ответ.

Как использовать операторы в Golang

Как использовать операторы в Golang

Операторы позволяют нам выполнять различные типы операций над операндами. В языке Go операторы можно классифицировать на основе их различных функций.

Идентификатор Void в Golang

Идентификатор Void в Golang

_(подчеркивание) в Golang называется пустым идентификатором. Идентификатор — определяемое пользователем имя компонентов программы, используемое для целей идентификации.

Как создать базовую программу на Golang

Как создать базовую программу на Golang

Привет, мир! это первая базовая программа на любом языке программирования. Вы можете написать эту первую программу на Golang, следуя инструкциям ниже.

Как установить Go на Windows

Как установить Go на Windows

Golang можно легко установить на Windows. Ниже приведено подробное пошаговое руководство по установке Golang на Windows.

Методы с таким же названием в Golang

Методы с таким же названием в Golang

Golang позволяет создавать два или более методов с одинаковым именем в одном пакете, но получатели этих методов должны быть разных типов.

Функции в Go

Функции в Go

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

Область действия переменных в Go

Область действия переменных в Go

Область действия переменной в Golang определяет часть программы, где эта переменная доступна. В Go все идентификаторы имеют лексическую область действия, которая определяется во время компиляции.

Узнайте о коде ошибки 0xc00000e и способах ее исправления.

Узнайте о коде ошибки 0xc00000e и способах ее исправления.

Ужасный синий экран смерти (BSOD) с кодом ошибки 0xc00000e, который часто появляется при запуске Windows 10, может сбивать с толку.

Пространство «Играй вместе», назовите пространство «Играй вместе»

Пространство «Играй вместе», назовите пространство «Играй вместе»

Многие люди используют пробелы в своих именах в Play Together или используют маленькие подчеркивания, чтобы создать пробелы между буквами, которые вы пишете в своем имени.

Как скачать Black Beacon PC

Как скачать Black Beacon PC

Хотя Black Beacon вполне можно опробовать на ПК, на данный момент игра официально не оптимизирована для этой платформы.

Формула для расчета площади поверхности и объема сферы

Формула для расчета площади поверхности и объема сферы

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

Что особенного в скафандре, который Китай выбрал для первой высадки человека на Луну?

Что особенного в скафандре, который Китай выбрал для первой высадки человека на Луну?

Китай намерен отправить своих первых граждан на Луну к 2030 году, и страна только что представила новый скафандр, который будет использоваться в предстоящей исторической миссии.

Продукты, которые легко вызывают воспаление в организме

Продукты, которые легко вызывают воспаление в организме

Многие продукты могут вызывать воспаления и хронические заболевания. Ниже приведены продукты, которых следует избегать, если вы не хотите занести в свой организм болезни.

Инструкции по игре Zuka Lien Quan Mobile, сезон S1 2023

Инструкции по игре Zuka Lien Quan Mobile, сезон S1 2023

Зука — убийца, который, как известно, является ужасом для чемпионов с низким уровнем здоровья. Узнайте, как эффективно использовать Зуку в 23 сезоне.

Последний код Heroic Era и как его использовать

Последний код Heroic Era и как его использовать

Получение подарков с помощью подарочных кодов Heroic Age — это то, что делают почти все новые игроки, присоединяясь к игре.

8 самых дешевых поставщиков облачных хранилищ

8 самых дешевых поставщиков облачных хранилищ

Давайте рассмотрим самые дешевые варианты облачного онлайн-хранилища. В этой статье мы рассмотрим цены как в абсолютных цифрах, так и за гигабайт (в месяц), чтобы вы могли выбрать наиболее подходящий для вас вариант.

Что означает ошибка со знаком решетки (####) в Excel?

Что означает ошибка со знаком решетки (####) в Excel?

#### в Excel — это распространенная ошибка Excel, которая появляется во многих случаях, когда мы вводим данные в Excel, функции в Excel, вводим формулы в Excel.

12 настроек на телефонах Samsung Galaxy, которые следует изменить

12 настроек на телефонах Samsung Galaxy, которые следует изменить

Только что купили телефон Samsung Galaxy и вам нужно его настроить? Вот 10 настроек, которые следует изменить, чтобы улучшить работу телефона Samsung.

Последние коды Murder Mystery 2 и как их ввести

Последние коды Murder Mystery 2 и как их ввести

Code Murder Mystery 2 помогает игрокам выбирать больше обликов ножей для своих персонажей или получать больше денег для оплаты услуг и покупки других вещей в игре.

28 красивых дизайнов поздравительных открыток с добрыми пожеланиями для родителей, супругов, возлюбленных, друзей

28 красивых дизайнов поздравительных открыток с добрыми пожеланиями для родителей, супругов, возлюбленных, друзей

В день рождения любимого человека, родителей, друзей, братьев и сестер, коллег... помимо подарков не забудьте отправить поздравительные открытки с пожеланиями.

Забавные, но милые загадки о флирте, которые «завоюют» сердце вашего возлюбленного

Забавные, но милые загадки о флирте, которые «завоюют» сердце вашего возлюбленного

Эти забавные тесты помогут вам произвести сильное впечатление и быстро и счастливо покорить сердце вашей пассии.

Corki DTCL сезон 7: предметы сборки, стандартный отряд Corki Gunner

Corki DTCL сезон 7: предметы сборки, стандартный отряд Corki Gunner

Корки DTCL 7 сезон нуждается в защите или поддержке, чтобы вызвать контроль, если он хочет быть свободным и уничтожить вражескую команду. В то же время, снаряжение Корки также должно быть стандартным, чтобы иметь возможность наносить более эффективный урон.