GO学习笔记(GO数据类型)

go 学习第二天,今天主要学习了GO的一些数据类型的知识。

go 常用数据类型大致有以下的类型

1 int (int, int8, int16, int32, int64)

2 float (float32, float64)

3 string

4 byte

5 bool

6 array

7 slice

8 map

9 channel

10 interface

11 strcut

常用数据类型定义和使用如下

// int 数据类型
    var int_ int
    var int_8 int8
    var int_16 int16
    var int_32 int64
    var int_64 int64
    fmt.Println(int_)
    fmt.Println(int_8)
    fmt.Println(int_16)
    fmt.Println(int_32)
    fmt.Println(int_64)
    // string
    var str string
    fmt.Println(str)

    // byte 
    var b byte
    fmt.Println(b)
    // bool
    var boolean bool
    fmt.Println(boolean)

    // float
    var f32 float32
    var f64 float64
    fmt.Println(f32)
    fmt.Println(f64)

    // array

    var arry [10] int
    arry[0] = 0
    arry[1] = 1
    arry[2] = -1
    var arry_str[10] string
    arry_str[0] = "hello"
    arry_str[1] = "world"
    fmt.Println(arry)
    fmt.Println(arry_str)

    // slice 动态数组, 初始化容量为0,可以通过append追加元素, 没有使用make初始化,不可通过索引的方式赋值,比如s[0]=1
    var s [] int
    fmt.Println(len(s)) 
    s = append(s, 1)
    s = append(s, 2, 3, 4, 5, 6, 7, 8, 9, 10)
    s[0]=0
    fmt.Println(s)
    s1 := make([]int, 5, 10)
    s1[0] = 1
    s1 = append(s1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
    fmt.Println(s1)

    // map 相当于python的字典
    dict := make(map[string]int)
    dict["oracle"] = 1521
    fmt.Println(dict)

由于今天学习还没到 9 channel 10 interface 11 strcut 因此只记录了前面的这些。
需要注意的是,默认情况下大部分的数据类型定义了但是没有初始化时go 会给他分配初始值

未初始化时的默认值
int 0
int8 0
int32 0
int64 0
float32 0
float64 0
bool false
string ” “

猜你喜欢

转载自blog.csdn.net/lucky404/article/details/79829626