English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang Основной курс

Golang Условные операторы

Golang Функции и методы

Golang Структуры

Golang Срезы и массивы

Golang 字符串(String)

Указатели в Golang

Интерфейсы в Golang

Конкурентоспособность в Golang

Исключения (Error) в Golang

Другие разнообразия Golang

Условные предложения языка Go (if, if...else, nested if)

Принятие решений в программировании подобно принятию решений в реальной жизни. В принятии решений выполняется блок кода при выполнении данных условий. В некоторых случаях это также называют предложениями управления потоком.GolangИспользуйте указанные предложения для определения выполнения программы в зависимости от некоторых условий. Эти предложения используются для продвижения и ветвления выполнения процесса в зависимости от изменений состояния программы.

Декларативные предложения для программирования Go:

if-выражение

Это 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...else-выражение

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

Накладные if-выражения

В языке 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..else..if

Здесь пользователь может выбирать из нескольких вариантов. 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") 
   } 
}

Вывод:

Нет соответствующих значений