变量
案例1,一次声明一个变量:
package main
import "fmt"
func main() {
// 1、先声明后使用
var name1 string
name1 = "今人"
fmt.Printf("%v %T\n", name1, name1)
// 2、声明同时赋值
var name2 string = "今人"
fmt.Printf("%v %T\n", name2, name2)
// 3、声明同时赋值(省略类型)
var name3 = "今人"
fmt.Printf("%v %T\n", name3, name3)
// 段变量
name4 := "今人"
fmt.Printf("%v %T\n", name4, name4)
}
案例2,一次声明多个变量:
package main
import "fmt"
func main() {
// 定义变量
// 1、先声明后使用,一次声明多个变量
var variable11, variable12, variable13, variable14 int
variable11, variable12, variable13, variable14 = 11, 12, 13, 14
fmt.Println(variable11, variable12, variable13, variable14)
// 2、声明的同时赋值
var variable21, variable22, variable23, variable24 int = 21, 22, 23, 24
fmt.Println(variable21, variable22, variable23, variable24)
// 3、声明同时赋值(省略类型)
var variable31, variable32, variable33, variable34 = 31, 32, "33", "34"
fmt.Println(variable31, variable32, variable33, variable34)
// 4、声明同时赋值
var (
variable41 = 41
variable42 = 42
variable43 = "43"
variable44 = "44"
)
fmt.Println(variable41, variable42, variable43, variable44)
// 5、段变量
variable51, variable52, variable53, variable54 := 51, 52, "53", "54"
fmt.Println(variable51, variable52, variable53, variable54)
}
常量
案例1,常量的定义:
package main
import "fmt"
func main() {
// 常量
const title string = "窗口标题"
const width = 700
const height = 34 * 10
fmt.Println(title, width, height)
// 多个常量
const (
cpu = "8核"
memory = "32G"
hardDisk = "512G"
)
fmt.Println(cpu, memory, hardDisk)
}
案例2,常量生成器iota:
package main
import "fmt"
func main() {
// 常量生成器,iota
const (
a1 = iota
a2
a3
a4
a5
)
fmt.Println(a1, a2, a3, a4, a5)
//
const (
b1 = iota << 1
b2
b3
b4
b5
)
fmt.Println(b1, b2, b3, b4, b5)
// iota出现时将被重置为0,每新增一行iota计数一次
const (
c1 = iota
c2
c3 = 100
c4
c5
c6 = iota
c7
c8
)
fmt.Println(c1, c2, c3, c4, c5, c6, c7, c8)
// 定义一行
// iota是const语句块中的行索引,而不是变量索引
const (
d1, d2 = iota + 1, iota + 2
d3, d4
d5, d6
)
fmt.Println(d1, d2, d3, d4, d5, d6)
}