Go语言中变量及常量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
// 变量

package main

import "fmt"

func fn1() (string, int) {
return "pengge", 22
}
func main() {
// 标准声明变量
// var a string
// var b int
// var c bool
// a = "ropon"
// b = 18
// c = true
// fmt.Println(a, b, c)

// // 批量声明
// var (
// aa string
// bb int
// )
// aa = "west"
// bb = 20
// fmt.Println(aa, bb)

// 声明并初始化
// var cc string = "ropon.top"
// var dd int = 22

// 类型推导
// var cc = "ropon.top"
// var dd = 18
// var cc, dd = "ropon.top", 22
// fmt.Println(cc, dd)

// 短变量声明 只有在函数内部使用
// ee := "lisi"
// ff := 25
// fmt.Println(ee, ff)

// 匿名变量 _ 可以重复声明
name, _ := fn1()
fmt.Println(name)
}

// 常量

package main

import "fmt"

func main() {
// 常量声明
// const pi = 3.14

// 批量声明
// const (
// pi = 3.1415
// e = 2.7
// )
// fmt.Println(pi, e)

//const 同时声明多个常量时,省略表示和上一行值相同
// const (
// n1 = 33
// n2
// n3
// )
// fmt.Println(n1, n2, n3)

// 常量计数器 iota 只能在常量表达式中使用
// iota 遇到const 关键字出现时就会被重置为0 const中每新增一行常量声明 iota自加1
// const (
// n1 = iota
// n2 = 100
// _
// n3 = iota
// n4
// )
// const n5 = iota
// fmt.Println(n1, n2, n3, n4, n5)

// 定义数量级 << 位左移 1 << 2 = 100 = 4
// const (
// _ = iota
// KB = 1 << (10 * iota)
// MB
// GB
// TB
// PB
// )
// fmt.Println(KB, MB, GB, TB, PB)

// 练习
const (
a, b = iota + 1, iota + 2
c, d
e, f
)
fmt.Println(a, b, c, d, e, f)

}