go常用的判斷

2021-10-22 17:41:26 字數 798 閱讀 3352

var str string 字串初始化為""只能通過len(str)而不能通過nil判斷

var i int    int初始化為0  ,只能通過i == 0,而不能通過nil判斷

var b bool   初始化為false,只能通過b == true ,而不能通過nil判斷

var bb byte 初始化為,可以用len(bb) 或bb == nil ,而不能通過bb == ""判斷

var c [1] int 初始化為[0]填充了預設值0,可以用len(c)或cap(c),而不能用 c== nil 或者c = ""判斷

var d string 初始化為,可以用d == nil || len(d) > 0 || cap(len) > 0 ,而不能用d == ""判斷

var e map[string]int 初始化為,可以用e == nil || len(e) > 0 ,而不能用e == ""判斷

var f inte***ce{}  初始化為nil,可以用f == nil ,而不能用 f=="" ||len(f) > 0 判斷

var g chan string 初始化為nil,可以用 g == nil ||len(g) > 0 || cap(g) > 0 ,而不能用g == ""判斷

var h *string 初始化為nil,只能用h == nil 判斷

nil支援的型別

var nil type // type must be a pointer, channel, func, inte***ce, map, or slice type

struct{}這種不能用以上的判斷

if判斷常用

語法 if then elif then else fi幾類用法 1.單個 是內建條件判斷符號。字串比較符號 要加轉義符號 多條件用 a and,表示 o or,表示 連線 a 4b 2 c 3if a le b b le c then echo ok else echo no fi或者 if a ...

go 常用操作

func struct2map obj inte ce map string inte ce for i 0 i t.numfield i return data 注意 如果報錯 handler crashed with error reflect numfield of non struct ty...

go 常用模組

fmt 模組 println 輸出 printf 格式化輸出 scanln 獲取引數 傳參,類似python的input 如 var name string fmt.scanln name fmt.println name 結果就是輸入的值 scanf 接受引數 也是類似python的input作用...