跳到主要内容

Go布尔值(关系和逻辑运算符)

提示
  1. 布尔数据类型:Go 语言中的布尔类型(bool)用于表示逻辑实体,只有两个可能的值:truefalse
  2. 关系运算符:Go 使用关系运算符(如 ==!=><)来比较两个值或变量,并返回 truefalse 来表示比较的有效性。
  3. 逻辑运算符:逻辑运算符(如 &&||!)基于条件返回 truefalse。逻辑表达式用于决策制作程序,例如检查某人的年龄是否超过 18。

Go 布尔数据类型

布尔数据类型表示逻辑实体。它可以有两个可能的值:truefalse

我们使用 bool 关键字创建布尔类型变量。例如,

package main
import "fmt"

func main() {

var boolTrue bool = true
var boolFalse bool = false

fmt.Println("布尔值为", boolTrue, "和", boolFalse)
}

输出:

布尔值为 true 和 false

Golang 中的关系运算符

我们使用关系运算符来比较两个值或变量。例如,

number1 := 9
number2 := 3

result := number1 > number2

这里,> 是一个关系(比较)运算符。它比较 number1 是否大于 number2。

关系运算符使用布尔值(truefalse)来返回关系的有效性。它返回:

  • 如果操作符之间的比较正确,则返回 true
  • 如果操作符之间的比较不正确,则返回 false

Golang 中不同类型的关系运算符

以下是 Go 中可用的各种关系运算符列表:

运算符示例描述
==(等于)a == b如果 ab 相等,则返回 true
!=(不等于)a != b如果 ab 不相等,则返回 true
>(大于)a > b如果 a 大于 b,则返回 true
<(小于)a < b如果 a 小于 b,则返回 true
>=(大于或等于)a >= b如果 a 大于或等于 b,则返回 true
<=(小于或等于)a <= b如果 a 小于或等于 b,则返回 true

示例:Go 中的关系运算符

// 程序演示关系运算符的工作原理

package main
import "fmt"

func main() {

number1 := 12
number2 := 20
var result bool

// 等于运算符
result = (number1 == number2)

fmt.Printf("%d == %d 返回 %t \n", number1, number2, result)

// 不等于运算符
result = (number1 != number2)

fmt.Printf("%d != %d 返回 %t \n", number1, number2, result)

// 大于运算符
result = (number1 > number2)

fmt.Printf("%d > %d 返回 %t \n", number1, number2, result)

// 小于运算符
result = (number1 < number2)

fmt.Printf("%d < %d 返回 %t \n", number1, number2, result)

}

输出

12 == 20 返回 false
12 != 20 返回 true
12 > 20 返回 false
12 < 20 返回 true

Go 中的逻辑运算符

逻辑运算符根据条件返回 truefalse

| 运算符 | 描述 | 示例 | | -------------- | -------------- | ---------------------------------------------------------------------------- | ----- | --- | ----- | ---------------------------------------- | | &&(逻辑与) | exp1 && exp2 | 如果表达式 exp1exp2 都为 true,则返回 true | | | |(逻辑或) | exp1 | | exp2 | 如果任一表达式为 true,则返回 true。 | | !(逻辑非) | !exp | 如果 expfalse,则返回 true;如果 exptrue,则返回 false。 |

示例:Go 中的逻辑运算符

// 程序演示逻辑运算符的工作原理

package main
import "fmt"

func main() {

number1

:= 6
number2 := 12
number3 := 6
var result bool

// 因为 number1 > number2 为假,所以返回 false
result = (number1 > number2) && (number1 == number3)

fmt.Printf("与运算符的结果是 %t \n", result)

// 因为 number1 == number3 为真,所以返回 true
result = (number1 > number2) || (number1 == number3)

fmt.Printf("或运算符的结果是 %t \n", result)

// 因为 number1 == number3 为真,所以返回 false
result = !(number1 == number3);

fmt.Printf("非运算符的结果是 %t \n", result)

}

输出

与运算符的结果是 false
或运算符的结果是 true
非运算符的结果是 false

Go 布尔表达式

在编程中,返回布尔值 truefalse 的表达式被称为布尔表达式。例如,

number1 := 5
number2 := 8

result := number1 > number2

这里,number1 > number2 是一个返回 false 的布尔表达式。

为什么使用布尔表达式?

布尔表达式用于创建决策程序。假设我们想创建一个判断一个人是否可以投票的程序。

我们可以使用布尔表达式检查该人的年龄是否大于 18 岁。如果为真,则该人可以投票。如果为假,则不能投票。

我们将在 Go if...else 中了解更多关于这些决策程序。