Golang学习历程【第四篇 运算符&流程控制】
1. 运算符
1.1 算术运算符
符号 | 描述 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
% | 取余 |
示例:
/*
1. 算术运算符
*/
num1 := 5
num2 := 3
fmt.Printf("%v + %v = %v\n", num1, num2, num1+num2) // 加法运算
fmt.Printf("%v - %v = %v\n", num1, num2, num1-num2) // 减法运算
fmt.Printf("%v * %v = %v\n", num1, num2, num1*num2) // 乘法运算
fmt.Printf("%v / %v = %v\n", num1, num2, num1/num2) // 除法运算:除法运算,取整数部分,float类型运算取全部值
// %% 转义,输出%
fmt.Printf("%v %% %v = %v\n", num1, num2, num1%num2) // 取余运算:取余数
/*
Go中自增,自减运算为语句,不属于运算符,不能赋值,这一点不同于其他语言
++ 自增
-- 自减
*/
num2++
fmt.Printf("num2自增后:%v \n", num2)
num2--
fmt.Printf("num2自减后:%v \n", num2)
结果:
5 + 3 = 8
5 - 3 = 2
5 * 3 = 15
5 / 3 = 1
5 % 3 = 2
num2自增后:4
num2自减后:3
1.2 关系运算符
符号 | 描述 |
---|---|
== | 等于 |
!= | 不等于 |
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
示例:
/*
2. 关系运算符
*/
num3, num4 := 8, 6
fmt.Printf("%v == %v = %v\n", num3, num4, num3 == num4) // false
fmt.Printf("%v != %v = %v\n", num3, num4, num3 != num4) // true
fmt.Printf("%v > %v = %v\n", num3, num4, num3 > num4) // true
fmt.Printf("%v >= %v = %v\n", num3, num4, num3 >= num4) // true
fmt.Printf("%v < %v = %v\n", num3, num4, num3 < num4) // false
fmt.Printf("%v <= %v = %v\n", num3, num4, num3 <= num4) // false
结果:
8 == 6 = false
8 != 6 = true
8 > 6 = true
8 >= 6 = true
8 < 6 = false
8 <= 6 = false
1.3 逻辑运算符
符号 | 描述 |
---|---|
&& | 逻辑与 |
|| | 逻辑或 |
! | 取非 |
示例:
/*
3. 逻辑运算符
&&:
真 && 假 = false
假 && 真 = false
假 && 假 = false
真 && 真 = true
||:
真 || 假 = true
假 || 真 = true
真 || 真 = true
假 || 假 = false
!:
!真 = false
!假 = true
*/
num5, num6 := 16, 20
fmt.Printf("值 = %v\n", num5 > 15 && num6 < 20) // false
fmt.Printf("值 = %v\n", num5 < 15 && num6 == 20) // false
fmt.Printf("值 = %v\n", num5 > 15 && num6 == 20) // true
fmt.Printf("值 = %v\n", num5 > 15 || num6 < 20) // true
fmt.Printf("值 = %v\n", num5 < 15 || num6 == 20) // true
fmt.