首先,本文记录的是我自己学习golang的理解.并不适合他人学习观看.
1.数据类型
在golang中数据类型一般可分为以下几种
1.数字类型(int8,int16,int32,int64) 此为有符号的数字类型,如果在int前面加上个u,那就说明他是无符号的数字类型.
2.浮点数类型(float32,float64,complex64,complex128) 后两者是实数和虚数.
3.字符串类型(string)用于存储一点文本
4.布尔类型(true/false)用于逻辑运算的结果.
这里没有列引用类型,指针类型,数组类型这些.
2.变量
在golang中声明变量有下面几种方式
package main
import "fmt"
func main() {
//第一种只声明 var 变量名 变量类型
var a int8 //声明了一个变量名为a,类型为int8的变量
//在golang中声明完变量但是并没有初始化就会被赋该类型的零值的.并且一定要被使用到。
//数字类型的零值是0
//第二种声明并初始化,var 变量名 [变量类型],这个可以不带变量类型,因为编译器会根据值推导类型.
var b int8 = 16 //声明了一个变量名为b,类型为int8的变量.并初始化值为16
//第三种简短声明,变量名 := 值 这种方式仅用于函数体内使用。也是编译器根据值来推导类型
name := "幻源"
//第四种一行声明多个变量
var year,month,day int //这里声明了year,month,day三个变量
//第五种同时声明多个变量并初始化
var source, str, sex = 18, "你好啊", "男的"
//第六种,当然也可以只是声明并不初始化.
var (
name1 = "幻源"
name2 = "张三"
age1 int = 18
age2 int = 200
)
fmt.Println(name1, age1, name2, age2)
fmt.Println(source, str, sex)
fmt.Println(year, month, day)
fmt.Println("My name is", name)
fmt.Println("b的值为:", b)
fmt.Println("a的值为:", a)
}
程序结果:
幻源 18 张三 200
18 你好啊 男的
0 0 0
My name is 幻源
b的值为: 16
a的值为: 0
1.交换变量
package main
import "fmt"
func main(){
var (
a int = 3
b int = 4
)
fmt.Println(a,b)
a,b = b,a
fmt.Println(a,b)
}
执行结果
3 4
4 3
2.数字类型之间可以相互运算
package main
import "fmt"
func main(){
soure1 := 80
soure2 := 100
soure3 := 50
result := (soure1+soure2+soure3) / 3
fmt.Println(result )
}
程序结果
76
3.字符串之间可以拼接
package main
import "fmt"
func main(){
str1:= "wow!"
str2:= "你太酷了"
result := str1 + str2
fmt.Println(result)
}
程序结果
wow!你太酷了
4. 布尔型之间可以相互比较
package main
import "fmt"
func main(){
iscool := true
isNotCool := false
fmt.Println(iscool == isNotCool)
}
程序结果
false
网友评论