代碼地址
https://github.com/fangkang7/goLearn.gitgit
案例
案例解釋
不論是返回切片仍是返回映射,函數的參數類型都是一個切片github
切片須要用時append來進行擴容微信
映射則直接鍵值的方式便可app
源碼
package main import "fmt" func main() { retMap := isWudebeishu(5, 16, 25, 30, 21) for key, value := range retMap { /** 5 是5的倍數 true 16 是5的倍數 false 25 是5的倍數 true 30 是5的倍數 true 21 是5的倍數 false */ fmt.Println(key, "是5的倍數", value) } // map[5:true 16:false 21:false 25:true 30:t fmt.Println(retMap) // [true false true true false] ret := isWudebeishu1(5, 16, 25, 30, 21) fmt.Println(ret) } /** 返回一個切片 */ func isWudebeishu1(a ...int) (ret []bool) { for _, v := range a { if v%5 == 0 { ret = append(ret, true) } else { ret = append(ret, false) } } return } /** 返回一個映射 */ func isWudebeishu(a ...int) (retMap map[int]bool) { // panic: assignment to entry in nil map // 這裏有個錯誤須要注意一下,這個錯誤是由於map沒有初始化 //retMap = make(map[int]bool) retMap = map[int]bool{ } for _, v := range a { if v%5 == 0 { retMap[v] = true } else { retMap[v] = false } } return }