Условные выражения

Последнее обновление: 18.12.2017

Условные выражения представляют логические операции и операции отношения. Они представляют некоторое условие и возвращают значение типа bool: true (если условие истинно) или false (если условие ложно).

Операции отношения

Операции отношения позволяют сравнить два значения. В языке Go есть следующие операции отношения:

  • ==

    Операция "равно". Возвращает true, если оба операнда равны, и false, если они не равны:

    package main
    import "fmt"
    
    func main() {
    	var a int = 8
    	var b int = 3
    	var c bool = a == b
    	fmt.Println(c)		// false
    }
    
  • >

    Операция "больше чем". Возвращает true, если первый операнд больше второго, и false, если первый операнд меньше второго:

    var a int = 8
    var b int = 3
    var c bool = a > b	// true
    
  • <

    Операция "меньше чем". Возвращает true, если первый операнд меньше второго, и false, если первый операнд больше второго:

    var a int = 8
    var b int = 3
    var c bool = a < b	// false
    
  • <=

    Операция "меньше или равно". Возвращает true, если первый операнд меньше или равен второму, и false, если первый операнд больше второго:

    var a int = 8
    var b int = 3
    var c bool = a <= b	// false
    
  • >=

    Операция "больше или равно". Возвращает true, если первый операнд больше или равен второму, и false, если первый операнд меньше второго:

    var a int = 8
    var b int = 3
    var c bool = a >= b	// true
    
  • !=

    Операция "не равно". Возвращает true, если первый операнд не равен второму, и false, если оба операнда равны:

    var a int = 8
    var b int = 3
    var c bool = a != b	// true
    var d bool = a != 8	// false
    

Как правило, операции отношения применяются в условных конструкциях типа if...else, которые мы далее рассмотрим.

Логические операции

Логические операции сравнивают два условия. Как правило, они применяются к отношениям и объединяют несколько операций отношения. К логическим операциям относят следующие:

  • ! (операция отрицания)

    Инвертирует значение. Если операнд равен true, то возвращает false, иначе возвращает true.

    var a bool = true
    var b bool = !a		//false
    var c bool = !b		// true
    
  • && (конъюнкция, логическое умножение)

    Возвращает true, если оба операнда не равны false. Возвращает false, если хотя бы один операнд равен false.

    var b bool = 4 > 5 && 6 > 8		//false
    var c bool = 3 <= 5 && 10 > 8	// true
    
  • || (дизъюнкция, логическое сложение)

    Возвращает true, если хотя бы один операнд не равен false. Возвращает false, если оба операнда равны false.

    var b bool = 4 > 5 || 6 > 8		//false
    var c bool = 3 == 5	|| 10 > 8	// true
    
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850