package main
import (
"fmt"
)
funcmain() {
/*
加法运算应用场景:
- 正数
- 相加操作
- 字符串拼接
减法运算应用场景:
计算2个数字的差值。
*/var (
// 加法表示正数
a int = +10// 加法可以用于相加操作
b int = 10 + 5// 加法可以用于字符串拼接
c string = "hello" + "world"// 减法计算两个数据的差值
x = 10 - 5
)
fmt.Printf("a = [%d], b = [%d], c = [%s], x = [%d]\n", a, b, c, x)
/*
乘号应用场景:
多用于数值型的乘法计算。
除号应用场景:
多用于数值型的除法计算。
*/var (
// 两个int类型数据运算,结果一定为整数类型
d int = 10 / 3// 浮点类型参与运算,结果为浮点类型
f float64 = 10.0 / 3
y float64 = 10 * 2.5
)
fmt.Printf("d = [%d],f = [%.10f], y = [%.1f]\n", d, f, y)
/*
取模应用场景:
多用于计算余数。
*/var (
g int = 10 % 3
h float64 = -10 % -4
)
fmt.Printf("g = [%d],h = [%.2f]\n", g, h)
/*
++:
自增操作。
--:
自减操作。
温馨提示:
1.在go语言中,++和--操作非常简单,只能单独使用,不能参与运算中去;
2.在go语言中,++和--只能在变量的后面,不能写在变量的前面;
*/var (
i int = 10
j = 20
)
i++
j--
// 下面2种写法不被允许,编译会报错// ++i// --j
fmt.Printf("i = [%d], j = [%d]\n", i, j)
}
三.赋值运算符
1.常见的赋值运算符
运算符
描述
=
简单的赋值运算符,将一个表达式的值赋给一个左值
+=
相加后再赋值
-=
相减后再赋值
*=
相乘后再赋值
/=
相除后再赋值
%=
求余后再赋值
<<=
左移后赋值
>>=
右移后赋值
&=
按位与后赋值
|=
按位或后赋值
^=
按位异或后赋值
2.参考案例
package main
import"fmt"funcmain() {
var (
a int = 10// 右侧的值运算清楚后,再复制给=的左侧
b int = (10+20)%3 + 3 - 8
c int = 10
x = 22
y = 33
)
// 等价于 c = c + 20
c += 20
fmt.Printf("a = %d, b = %d, c = %d\n", a, b, c)
fmt.Printf("交换前: x = %d, y = %d\n", x, y)
// 交换x和y的值
x, y = y, x
fmt.Printf("交换后: x = %d, y = %d\n", x, y)
}
package main
import"fmt"funcmain() {
var (
// 定义一个int基础数据类型
a int = 100// 定义一个*int指针类型数据
b *int = &a
)
fmt.Printf("a对应内存地址为: %v,存储的数据为:%v\n", &a, a)
fmt.Printf("b对应的内存地址为: %v,存储的数据为: %v,指针指向的数据为: %v\n", &b, b, *b)
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步