指针
-
获取变量的地址(指针),用 & 操作符,比如 &number
-
指针类型,存储的是一个地址,比如 *int,*float64
-
访问指针类型指向空间,用 *,比如 *ptr
-
指针空值类型是nil ,而不是 null
-
不支持 ->,一律用 .
-
不支持指针运算
运算符
运算符分类
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
- 其他运算符
算术运算符
- 对数值类型使用
- +,-,*,/,%,++,–
- / :如果两边都是整数,则结果会把小数直接舍去
- % :公式: a % b = a - a / b * b
- ++/-- :只能作为独立的语句使用,即单独占一行,++和–只能写在变量的后面
比较运算符
- 用在条件判断或循环判断中,返回值是true或false
- ==, >, < , >=, <=, !=
逻辑运算符
- 用在条件判断或循环判断中,参与运算的是true或false,返回值是true或false
- &&(短路), ||(短路), !
赋值运算符
-
=, +=, -=, *=, /=, %=
-
<<=, >>=, &=, |=, ^=
-
赋值运算左边只能是变量,右边可以是变量,表达式,常量值
-
交换变量而不使用中间变量
var a int = 10 var b int = 20a = a + b b = a - b // b = (a+b) - b = a a = a - b // a = (a+b) - a = b
其他运算符
- Go官方明确声明不支持 三元运算符
- 取地址 &
- 解指针 *