1. 程式人生 > >GO學習筆記(GO資料型別)

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 ” “