我们一起学习GO语言 02
接下来我们进入Go语言的基本语法与使用-变量
Go语言中标准声明变量的格式:var 变量名称 变量类型 例如-01:varone int.
以上是单个变量声明,如果是要批量声明呢?在Go语言中是可以的,例如-02:11
var (
a int
b stirng
c float32
)
1.变量声明好了不用可以吗?注意了这里是不行的,有的开发语言声明了不使用也可以,但是Go语言中是不行的,必须使用才行,否则会弹出错误提示信息例如01:one declared and not usedgo,a已经声明了但未使用的错误信息。
2.Go语言在声明变量时,会自动对变量进行初始化操作,整型和浮点型的默认值为0,字符串变量默认值为空字符串,布尔类型默认为false,切片、函数、指针变量的默认值为nil。虽然有默认初始化,但是我们要养成良好的编程习惯,声明变量后就初始化变量,减少不必要的麻烦。
3.有没有更简便的声明方式呢?答案是肯定的,例如-03:e:=10
4.多个变量同时赋值,例如-04:a,b, c, d = 99, " 请继续你的表演!", 113.8, false
5.匿名变量:例如-05://匿名变量,例如—05:func GetData() (int, int){return66, 77 } f, _ := GetData() fmt.Println(f)
6.数据类型:整型分为int8、int16、int32、int64、uint8、uint16、uint32、uint64,浮点型:float32、float64,布尔型,字符串,字符串常见的转义符包括回车、换行、单双引号、制表符等,例如—06:fmt.Println("str=:\"c:Go\\bin\\go.exe\"")
定义多行字符串,需要用到数字1旁边的符号“`”
const str00 = `第一行
第二行
第三行
\r\n `
fmt.Println(str00)
7.切片,是一个拥有相同类型元素的可变长度的序列,能动态分配的空间,声明方式:var name []T,例如—07:
qp := make([]int, 3)
qp[0] = 1
qp[1] = 2
qp[2] = 3
fmt.Println(qp)
8.指针,有指针地址、指针类型、指针取值,使用“&”操作符放在变量前面对变量进行获取“地址”操作。例如—08:
var cat int=1
fmt.Printf("%p", &cat)
value:=*cat
fmt.Println(value)
//从指针地址获取指针指向的值
add := &cat //对cat获取地址
g := *add //对指针取值操作
fmt.Println(g)
//代码事例:
package main
import "fmt"
func main() {
//标准声明变量格式,例如--01
var one int
//输出
fmt.Println(one)
//批量声明变量,例如--02
var (
a int
b string
c float32
d bool
)
//输出变量(默认值)
fmt.Println(a)
fmt.Printf(b)
fmt.Println(c)
fmt.Println(d)
fmt.Printf("----------分割线----------")
fmt.Println() //换行
//给变量初始化值--养成良好的习惯
one = 100
a = 88
b = "请开始你的表演!"
c = 6.66
d = true
//输出变量(初始化值)
fmt.Println(one)
fmt.Println(a)
fmt.Printf(b)
fmt.Println() //换行
fmt.Println(c)
fmt.Println(d)
//精简的声明并初始化方式,例如--03
e := 10
fmt.Println(e)
//多个变量同时赋值,例如--04
a, b, c, d = 99, " 请继续你的表演!", 113.8, false
fmt.Println(a, b, c, d)
//匿名变量,例如--05
f, _ := GetData()
fmt.Println(f)
//字符转义符及定义多行字符,例如--06
fmt.Println("str=:\"c:Go\\bin\\go.exe\"")
const str00 = `第一行
第二行
第三行
\r\n
`
fmt.Println(str00)
//切片,例如:--07
qp := make([]int, 3)
qp[0] = 1
qp[1] = 2
qp[2] = 3
fmt.Println(qp)
//指针获取地址然后输出--08
var cat int = 1
fmt.Printf("%p ", &cat)
//从指针地址获取指针指向的值
add := &cat //对cat获取地址
g := *add //对指针取值操作
fmt.Println(g)
}
//匿名变量,例如--05
func GetData() (int, int) {
return 66, 77
}
请开始你的表演,践行,践行,再践行。未完待续。。。