一、运算符的基本介绍
二、算数运算符
1)一些使用
- 运算的数都是整数,结果也为整数10/4=2
- 希望有小数10.0/4
- %的正负看第一个数
2)注意
- 自增自减只能当做一个独立语言使用
- 没有++a,–a
3)练习
import(//还有97天放假,问多少个星期零几天
"fmt"//_"fmt"忽略
)
func main(){
today:=97
week:=today/7
day:=today%7
fmt.Println("today=",today,"week=",week,"day=",day)
}
三、关系运算符
1)介绍
2)细节
- 关系运算符组成的表达式,称为关系表达式
- 关系运算符的结果只有true和false
- ==不要写成=
四、 逻辑运算符
1)介绍
2)细节
- &&短路与,第一个条件false,第二个不会判断,结构false
- ||短路或,第一个true,第二个不会判断,结构true
func test() bool{
fmt.Println("test...")
return true
}
func main(){
i:=10
if i<9 && test(){
fmt.Println("ok...")
}
if i>9 || test(){
fmt.Println("hello...")
}
}
五、赋值运算符
1)介绍
2)案例:交换两数
package main
import "fmt"
func main(){
a:=9
b:=10
t:=a
a:=b
b:=t
fmt.Println(a)
fmt.Println(b)
}
3)赋值运算符特点
4)另一种形式的交换
a:=9
b:=10
a=a+b
b=a-b
a=a-b
fmt.Println(a)
fmt.Println(b)
c:=1
d:=2
c,d=d,c
fmt.Println(c)
fmt.Println(d)
六、位运算符
七、 其他运算符说明
func main(){
a:=100
fmt.Println("a的地址:",a)
var ptr *int =&a
fmt.Println("ptr指向的值=",*ptr)
}
八、运算符的优先级
- 只有单目运算符和赋值运算符,是从右向左运算的
- 大致优先级
九、键盘输入语句
1)步骤
- 导入fmt包
- 调用fmt.Scanf()固定格式,类似printf;或者fmt.Scanfln(),类似cout
2)案例:
func main(){
var name string
var age byte
var sal float32
var isPass bool
fmt.Println("请输入姓名 ")
fmt.Scanln(&name)//引用目的改变原来的值,这种方式推荐使用
fmt.Println("请输入年龄 ")
fmt.Scanln(&age)
fmt.Println("请输入薪水 ")
fmt.Scanln(&sal)
fmt.Println("请输入是否通过 ")
fmt.Scanln(&isPass)
fmt.Printf("姓名:%v 年龄:%v 薪水:%v 是否通过: %v",name,age,sal,isPass)
//fmt.Scanf("%s %d %f %d",&name,&age,&sal,&isPass)
十、进制
1)四种表达不能使用二进制表达整数
2)图示
3)介绍
-
其他进制转十进制
-
十进制转其他进制
-
二进制转其他进制
-
其他进制转二进制
十一、位运算
1)计算机内部,运行各种运算时,都是通过二进制的方式来运行。
2)原码,反码,补码计算机运行是用补码的方式来运算的
3)位运算符和移位运算符
4)案例
出现负数用补码进行计算,结果为负数(这是补码)反推原码得出结果
func main(){
fmt.Println(2&3)
fmt.Println(2|3)
fmt.Println(2^3)
fmt.Println(-2^2)
a:=1>>2
b:=1<<2
fmt.Println("a=",a,"b=",b)
}
总结
这里对文章进行总结:
本文仅仅简单介绍了Golang变量的使用,此篇是通过b站尚硅谷Golang视频的学习做的笔记。