Go语言中控制程序走向的核心是条件判断,其基石是比较运算符(==、!=、=)和逻辑运算符(&&、||、!),它们组合构成if等语句的布尔条件。

在Go语言中,控制程序走向的核心是条件判断,而比较运算符就是构建这些判断的基石。它们用于比较两个值,并返回一个布尔结果(true或false),这个结果决定了if、for等流程控制语句的执行路径。掌握这些运算符是学习Go的入门关键。
基本比较运算符
Go提供了六种基础的比较运算符,适用于数值、字符串等类型。它们的用法直观,能直接表达“大于”、“小于”、“等于”等关系。
常用比较运算符:-
==:判断两个值是否相等。例如
a == b,如果a和b的值相同,则结果为true。 -
!=:判断两个值是否不相等。例如
a != b,如果a和b的值不同,则结果为true。 - :判断左边的值是否小于右边的值。例如
age ,常用于判断是否未成年。 - :判断左边的值是否小于或等于右边的值。
- >:判断左边的值是否大于右边的值。
- >=:判断左边的值是否大于或等于右边的值。
这些运算符的结果只能是 true 或 false,它们是构成if语句条件的最基本元素。注意,Go中不需要用括号将整个条件包裹起来,但为了代码清晰,在复杂的逻辑中可以使用括号进行分组。
结合逻辑运算符构建复杂条件
单一的比较往往不够用,这时需要逻辑运算符来组合多个条件,实现更精细的控制。
立即学习“go语言免费学习笔记(深入)”;
核心逻辑运算符:-
&& (逻辑与):只有当两边的表达式都为true时,整个表达式才为true。例如
score >= 80 && score 可以判断成绩是否良好。 -
|| (逻辑或):只要两边的表达式中有一个为true,整个表达式就为true。例如
day == "Saturday" || day == "Sunday"判断是否为周末。 -
! (逻辑非):对一个布尔值取反。例如
!(finished)表示“未完成”的状态。
通过将比较运算符与逻辑运算符结合,可以写出如 if age >= 18 && hasLicense 这样既判断年龄又判断是否有驾照的复合条件。记住,比较运算符的优先级高于逻辑运算符,但使用括号能让意图更明确。
在条件判断中的实际应用
比较运算符最终要服务于条件判断语句,最常见的是if语句。Go的if语句语法简洁,直接跟上由比较和逻辑运算构成的布尔表达式即可。
一个典型的例子是根据分数评级:
score := 85
if score >= 90 {
fmt.Println("优秀")
} else if score >= 80 {
fmt.Println("良好")
} else {
fmt.Println("一般")
}
这里连续使用了>=比较运算符。另外,Go允许在if语句中先执行一个简单语句(如变量声明),再进行判断,这能让代码更紧凑:
if n := rand.Int(); n % 2 == 0 {
fmt.Println(n, "是偶数")
} else {
fmt.Println(n, "是奇数")
}
在这个例子中,%是取模运算符,n % 2 == 0这个条件利用了“偶数除以2余数为0”的数学特性,通过比较运算符==来判断真假。基本上就这些。









