留意一下简书的代码块显示注释有问题,若想看全,可以全选反色查看
package main
import "fmt"
func main() {
//常量定义
const CONSTNAME = "feijian"
//定义变量d2种方式
var i int
j := 2.002
var str1 string
str2:="str2"
str1 = "str1"
i = 1
//多个变量一次性赋值
k,str3 := 3,"str3"
//枚举
const
(
const1 = iota //0,iota从0开始计数
const2 //1,iota++
const3 = iota + 1 //3
)
fmt.Println(CONSTNAME) //feijian
fmt.Println(i) //1
fmt.Println(j) //2.002
fmt.Println(k) //3
fmt.Println(str1) //str1
fmt.Println(str2) //str2
fmt.Println(str3) //str3
fmt.Println(const1) //0
fmt.Println(const2) //1
fmt.Println(const3) //3
}
func printDemo2() bool {
//一般来说go语言的数组长度是固定,若有动态数组需求,可以使用切片slice解决
str := [2]string{}
str[0]="str1"
str[1]="str2"
nums := [3]int{}
nums[0] = 0
nums[1] = 1
var i int
for i=0;i<len(str);i++{
fmt.Println(str[i]) //str1,str2
}
for i=0;i<len(nums);i++{
fmt.Println(nums[i]) //0,1,0
}
return true
}
func printDemo3() {
i := 10
p := &i
var p2 *int
p2 = &i
fmt.Println(i)
fmt.Println(*p)
fmt.Println(*p2)
fmt.Println(&i)
fmt.Println(p)
fmt.Println(p2)
fmt.Println(p2==nil) //判断指针是否为空的方式
//打印结果
/*
10
10
10
0xc04200e0f0
0xc04200e0f0
0xc04200e0f0
false
*/
}