8. Управление языковым потоком Go: if-else

Go

Привет всем, меня зовут Мин.

В период самостоятельного изучения Golang я написал подробные учебные заметки и разместил их в своем личном общедоступном аккаунте WeChat «Время программирования на Go».Что касается языка Go, я тоже новичок, поэтому то, что я написал, должно больше подходить для новых студентов, если вы только изучаете язык Go, вам стоит обратить на него внимание, учиться и расти вместе.

Мой онлайн-блог:golang.iswbm.comМой Github: github.com/iswbm/GolangCodingTime


1. Модель условного оператора

Способов управления процессами в Go по-прежнему довольно много, и они следующие:

  • если - еще условное выражение
  • switch - оператор выбора регистра
  • for - оператор цикла диапазона
  • оператор безусловного перехода goto
  • отложить выполнение задержки

Сегодня поговорим об условном операторе if-else.

Модель условного оператора в Go выглядит так

if 条件 1 {
  分支 1
} else if 条件 2 {
  分支 2
} else if 条件 ... {
  分支 ...
} else {
  分支 else
}

Компилятор Go, для{а также}Существуют строгие требования к положению else if (или else) и фигурных скобок с обеих сторон, которые должны находиться на одной строке.

Поскольку Go строго типизирован, вы должны строго возвращать логические данные в условных выражениях (nil, 0 и 1 недопустимы, подробности см. в разделе «Подробные типы данных: словари и логические типы»).

Рассмотрим несколько примеров этой модели.

2. Единоличное судебное решение

только один если , не иначе

import "fmt"

func main() {
    age := 20
    if age > 18 {
        fmt.Println("已经成年了")
    } 
}

Если в условии необходимо выполнить несколько условий, вы можете использовать&&а также||

  • &&: Указывает, что и левое, и правое должны быть истинными, чтобы окончательный результат был истинным, в противном случае он будет ложным.
  • ||: означает или, пока одно из левого и правого истинно, конечный результат истинен, в противном случае он ложен
import "fmt"

func main() {
    age := 20
    gender := "male"
    if (age > 18 && gender == "male") {
        fmt.Println("是成年男性")
    }
}

3. Многоотраслевое решение

if - else

import "fmt"

func main() {
    age := 20
    if age > 18 {
        fmt.Println("已经成年了")
    } else {
        fmt.Println("还未成年")
    }
}

if - else if - else

import "fmt"

func main() {
    age := 20
    if age > 18 {
        fmt.Println("已经成年了")
    } else if age >12 {
        fmt.Println("已经是青少年了")
    } else {
        fmt.Println("还不是青少年")
    }
}

4. Продвинутое письмо

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

import "fmt"

func main() {
    if age := 20;age > 18 {
        fmt.Println("已经成年了")
    }
}

Руководство по серии

01. Построение среды разработки (Goland & VS Code)

02. Изучите пять методов создания переменных

03. Подробные типы данных:**Целое число и число с плавающей запятой**

04. Подробные типы данных: байт, руна и строка

05. Подробно объясните типы данных: массивы и срезы

06. Подробно объясните типы данных: словари и логические значения

07. Подробно объясните типы данных: указатели

08. Объектно-ориентированное программирование: структуры и наследование

09. Статья для понимания функций в Go

10. Управление потоком языка Go: условный оператор if-else

11. Управление потоком языка Go: оператор выбора switch-case

12. Управление потоком языка Go: оператор цикла for

13. Перейти к управлению языковым потоком: перейти к безусловному переходу

14. Перейти к управлению языковым потоком: отложить отложенный вызов

15. Объектно-ориентированное программирование: интерфейсы и полиморфизм

16. Ключевые слова: В чем разница между make и new?

17. Статья о понимании блоков и области видимости в Go

18. Изучите Go Coroutines: горутины

19. Изучите сопрограммы Go: подробно объясните каналы/каналы

20. Подробное объяснение нескольких классических случаев ошибки взаимоблокировки канала.

21. Изучите сопрограммы Go: группа ожидания

22. Изучите процедуры Go: мьютексы и блокировки чтения-записи

23. Обработка исключений в Go: паника и восстановление

24. Сверхдетальная интерпретация прошлой жизни Go Modules и вводное использование

25. 8 важных знаний об импорте пакетов на языке Go

26. Как открыть исходный код модулей, которые я написал для использования другими?

27. Расскажите об утверждениях типов в Go?

28. Эти пять пунктов помогут вам понять, как использовать select в языке Go.