GO蛋疼的学习笔记
packagemain
import “fmt”
var i int = 10
var y int = 25
var x = 22.5
var c = 23
var carray [5]string
var myarray = make([]int, 5, 10)
type inventory struct {
cinvCode string
cinvName string
iPrice float32
}
func PrintNum(num int) int {
fmt.Println(“这是一个自定义的函数传入了一个Int值,他是:”, num, “通过这个函数,他将增加10”)
return num + 10
}
func main() {
i, y = y, i
fmt.Println(“i now is “, i, “And Y now is”, y, “这个可以有”)
cStr := “GO中,变量可以这么定义,但是只能是一个局部变量:cStr:= ”
fmt.Println(cStr)
iarray := [3]int{2, 3, 4}
carray[0] = “5”
carray[1] = “6”
carray[2] = “7”
carray[3] = “10”
carray[4] = “15”
iarray[0] = 1
for i := 0; i < 20; i++ {
fmt.Println(i, “GO中,For循环的运有,跟C,C++,C#差不多”)
}
fmt.Println(carray, len(carray), “取一个值或数组的长度,可以用Len”)
fmt.Println(“GO 数组运用的偏招,GO的世界,我不是很懂”)
for i, v := range carray {
fmt.Println(“carray the”, i, “is”, v)
}
fmt.Println(“GO 的数组是一个蛋疼的存在,Python的动态数组好用多了”)
a := PrintNum(10)
fmt.Println(a)
fmt.Println(“myarray是一个数组切片,初始为元素个数为5,预留10.现在长度是:”, len(myarray), cap(myarray))
myarray = append(myarray, 1, 2, 3)
fmt.Println(myarray)
myarray2 := []int{6, 9}
myarray = append(myarray, myarray2…)
fmt.Println(myarray)
var Kinv map[int]inventory
Kinv = make(map[int]inventory)
Kinv[1] = inventory{“01001”, “存货01001”, 16.5}
Kinv[2] = inventory{“01002”, “存货01002”, 17.5}
fmt.Println(Kinv[1], Kinv[2], Kinv[1].cinvCode)
fmt.Print(“GO的字典倒是不错,没有那么蛋疼”)
kzx, has := Kinv[5]
if has {
fmt.Println(“kzx是存在的,他的值是:”, kzx)
} else {
fmt.Println(“对不起,他是不存在的”)
}
fmt.Println(“上面的方法不错,可以检测键是否存在,避免了不必要的错误。”,
“GO开始没有那么蛋疼了”)
}