Go学习笔记之运算符号

算数运算符

运算符 描述
+ 相加
- 相减
* 相乘
/ 相除
% 求余
++ 自增
-- 自减

代码示例:

go 复制代码
package main

import "fmt"

func main() {
	// 算数运算符
	a := 1
	b := 2
	fmt.Println(a + b) // 加 3
	fmt.Println(a - b) // 减 -1
	fmt.Println(a * b) // 乘 2
	fmt.Println(a / b) // 除 0
	fmt.Println(a % b) // 取余 1
	// 自增与自减
	a++               // a = a + 1
	b--               // b = b - 1
	fmt.Println(a, b) // 2 1
}

注意:在golang中,自增与自减只能独立使用,错误写法如下:

go 复制代码
var i = 8
var a int 
a = i++ //错误,i++只能独立使用
a = i-- //错误,i--只能独立使用

注意:在golang中没有前++,错误写法如下:

go 复制代码
var i = 1
++i //错误,在golang中没有前++
--i //错误,在golang中没有前--

关系运算符

运算符 说明
== 检查两个值是否相等
!= 检查两个值是否不相等
> 检查左边值是否大于右边值
>= 检查左边值是否大于等于右边值
< 检查左边值是否小于右边值
<= 检查左边值是否小于等于右边值

代码示例:

go 复制代码
package main

import "fmt"

func main() {
	a := 3
	b := 4
	fmt.Println(a == b) // false
	fmt.Println(a != b) // true
	fmt.Println(a < b)  // true
	fmt.Println(a <= b) // true
	fmt.Println(a > b)  // false
	fmt.Println(a >= b) // false
}

逻辑运算符

符号 描述
&& 逻辑AND 如果两边操作都是True,则为True,否则为False
|| 逻辑OR 如果两边操作数有一个True 则为True,否则为False
逻辑NOT 如果条件为True,则为False,否则为True

代码示例:

go 复制代码
package main

import "fmt"

func main() {
	// 逻辑运算符
	var a = 10
	var b = 20
	fmt.Println(a > 10 && b < 30) //false
	fmt.Println(a > 10 || b < 30) //true
	fmt.Println(!(a > 10))        //true
}

赋值运算符

运算符 描述
= 简单的赋值运算符,将一个表达式的值赋给一个左值
+= 相加后再赋值
-= 相减后再赋值
*= 相乘后再赋值
/= 相除后再赋值
%= 取余后再赋值

代码示例:

go 复制代码
package main

import "fmt"

func main() {
	// 赋值运算符
	var a = 10
	a += 9
	fmt.Println(a) // 19
	a -= 8
	fmt.Println(a) // 11
	a *= 7
	fmt.Println(a) // 77
	a /= 6
	fmt.Println(a) // 12
	a %= 5
	fmt.Println(a) // 2
}

相关推荐
M78佐菲8 小时前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
益达丫9 小时前
Socket编程揭秘:端口、IP与进程通信的底层逻辑
linux·笔记
无敌贵点大王10 小时前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表
是翎12 小时前
深度长文|2026产品经理AI实践手册
人工智能·深度学习·学习·自然语言处理·数据挖掘
Linux-lucky12 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
知识分享小能手13 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
马可家的菠萝14 小时前
你收藏的资料,有多少真的被你第二次打开过?
笔记·知识管理·效率提升·个人知识库
小刘在重生~15 小时前
Java Lock 显式锁案例|ReentrantLock 解决多线程安全问题(超详细实战)
java·笔记·面试
职豚求职小程序15 小时前
中国人寿27秋招笔试[特殊字符]北森机考|备考攻略
笔记
江湖人称菠萝包15 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter9-Qt Charts
笔记·qt·qt5