English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Принятие решений в программировании подобно принятию решений в реальной жизни. В принятии решений выполняется блок кода при выполнении данных условий. В некоторых случаях это также называют предложениями управления потоком.GolangИспользуйте указанные предложения для определения выполнения программы в зависимости от некоторых условий. Эти предложения используются для продвижения и ветвления выполнения процесса в зависимости от изменений состояния программы.
Декларативные предложения для программирования Go:
Это simplest decision. Он используется для принятия решения о том, следует ли выполнять определенное заявление или блок заявлений, то есть, если определенное условиеtrueесли условие true, выполните блок заявлений,否则 не выполните.
Синтаксис:
if(condition) { //заявления, которые нужно выполнить //condition true }
Диаграмма потока:
Пример:
//Использование оператора if package main import "fmt" func main() { //загрузка локальной переменной var v int = 700 //Использование оператора if //проверка условия if v < 1000 { //печать следующего содержимого, если условие оценивается как true fmt.Printf("v меньше 1000\n") } fmt.Printf(" Worth v: %d\n", v) }
Вывод:
v меньше 1000 Worth v: 700
if-выражение告诉我们, если условие true, оно выполнит блок заявлений, если условие false, то не выполнит. Но что, если мы хотим сделать что-то другое, когда условие false; в этом случае нам нужно использовать else-выражение. При false можно использовать else-выражение вместе с if-выражением для выполнения блоков кода.
Синтаксис:
if (condition) { //если условие true, выполните этот код-блок } //если условие false, выполните этот код-блок }
Диаграмма потока:
//использование if...else-выражения package main import "fmt" func main() { //локальная переменная var v int = 1200 //проверка условия с помощью if-выражения if v < 1000 { //печать следующего содержимого, если условие оценивается как true fmt.Printf("v < 1000\n") } //печать следующего содержимого, если условие оценивается как false fmt.Printf("v > 1000\n") } }
Вывод:
v > 1000
В языке Go nesting if это if-выражение, которое является целью другого if или else. Накладные if-выражения - это if-выражения в другом if-выражении. Да, Golang позволяет нам вставлять if-выражения в другие if-выражения. Мы можем поместить одно if-выражение в другое.
Синтаксис:
if(condition1) { //Выполнять, если условие 1 истинно if(condition2) { //Выполнять, если условие 2 истинно } }
Диаграмма потока:
//Использование вложенных операторов if package main import "fmt" func main() { //Два локальных переменные var v1 int = 400 var v2 int = 700 //Использование оператора if if(v1 == 400) { //Если условие if истинно, выполнять if(v2 == 700) { //Если условие if истинно, выполнять вывод на печать fmt.Printf("Значение v1 составляет 400, значение v2 составляет 700\n"); } } }
Вывод:
Значение v1 составляет 400, значение v2 составляет 700
Здесь пользователь может выбирать из нескольких вариантов. if-операторы выполняются сверху вниз. Как только любое условие if становится истинным, выполняются соответствующие ему инструкции, и все остальные if-операторы пропускаются. Если все условия не выполняются, выполняется конечное else-выражение.
Важно:
if-операторы могут иметь от 0 до 1 if, и они должны быть расположены после других if
if-операторы могут иметь от 0 до нескольких if, и они должны быть расположены до else
Если else if успешен,其余的 else if или else не будут выполнены
Синтаксис:
if(condition_1) { //Если condition_1 истинен, выполнять этот блок кода } //Если condition_2 истинен, выполнять этот блок кода } //Если ни одно из условий не истинно, выполнять этот блок кода }
Диаграмма потока:
package main import "fmt" func main() { var v1 int = 700 if(v1 == 100) { //Если условие истинно, то显示以下内容 fmt.Printf("Значение v1 составляет 100\n") } fmt.Printf("Значение v1 составляет 200\n") } fmt.Printf("Значение v1 составляет 300\n") } //Если ни одно из условий не истинно fmt.Printf("Нет соответствующего значения\n") } }
Вывод:
Нет соответствующих значений