GO基礎整理

第一部分

常量:

常量的數(shù)值可以作為各種類型使用 
func consts() {
    const (
        filename  = "abc.txt"
        a, b  = 3, 4
    )
    var c int
    c = int(math.Sqrt(a*a + b*b))
    fmt.Println(filename, c)
}
枚舉類型舉例
    tips:  1 :沒有表達式的常量定義 復用上一行的表達式

     2 :從第一行開始 iota從0逐行+1

         3: 不同的const定義塊互相不干擾

     4 :iota只能在常量組中使用
func enums(){
    //普通枚舉類型
    const(
        cpp = iota
        _
        java
        golang
    )
    //自增值枚舉類型b  kb mb gb tb pb
    const(
        b = 1 << (10 * iota)
        kb
        mb
        gb
        tb
        pb
    )
    fmt.Println(cpp, java, golang)
    fmt.Println(b, kb, mb, gb, tb, pb)

}
const(
    a = iota // iota只能在常量組中使用
    b = 10
    c   // 沒有表達式的常量定義 復用上一行的表達式
    d, e = iota, iota
    f = iota // 從第一行開始 iota從0逐行+1
)
iota代表的是這里的行數(shù)
打印下來:
0 10 10 3 3 4

Switch使用

func grade(score int) string {
    g := ""
    switch {
    case score < 0 || score > 100:
        panic(fmt.Sprintf("Wrong score: %d", score))
    case score <60:
        g = "F"
    case score <80:
        g = "C"
    case score <90:
        g = "B"
    case score <100:
        g = "A"
    }
    return g
}

IF判斷方式

if的條件是可以賦值的
if的條件里賦值的變量作用域就在這個if語句里

舉例:

func main() {
    const filename = "abc.txt"
    if contents, err := ioutil.ReadFile(filename); err != nil{
        fmt.Println(err)
    } else {
        //print文件使用
        fmt.Printf("%s\n", contents)
    }
    //之前的寫法
/*
    contents, err := ioutil.ReadFile(filename);
    if err != nil{
        fmt.Println(err)
    } else {
        //print文件使用
        fmt.Printf("%s\n", contents)
    }*/
}

數(shù)組:

[10]int 和[20]int 時不同的類型

調用func f(arr [10]int) 會拷貝數(shù)組

定義數(shù)組的方式:
    var arr1 [5]int
    arr2 := [3]int{1, 3, 5}
    arr3 := [...]int{2, 4, 6, 8, 10}
    //多維數(shù)組 四行五列
    var grid [4][5]int

遍歷數(shù)組的方式:

    //普通處理數(shù)組
    for i := 0; i < len(arr3); i++ {
        fmt.Println(arr3[i])
    }
    //range關鍵字獲取數(shù)組的下標和值
    for _, v := range arr3 {
        fmt.Println(v)
    }

class命名 大寫為public 小寫為private

一個目錄只能有一個package包

main()方法 必須配合package main

函數(shù)的兩種寫法:

語法一

func session(s RetrieverPoster) string{
   s.Post(url, map[string]string{
      "contents": "another faked imooc.com",
   })
   return s.Get(url)
}
調用方式就是session(***)

語法二

func (s RetrieverPoster) session string{
   s.Post(url, map[string]string{
      "contents": "another faked imooc.com",
   })
   return s.Get(url)
}
調用方式就是 ***.session()

go mod依賴管理

由GO命令統(tǒng)一管理 用戶不必關心目錄結構

初始化:go mod init

增加依賴: go get

更新依賴: go get [@v版本號] 拿到新老版本之后mod會多一些東西 通過go mod tidy把多余依賴去除

項目遷移到go mod: go mod init , go build ./...

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末伞辛,一起剝皮案震驚了整個濱河市幕帆,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌恭金,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件勇边,死亡現(xiàn)場離奇詭異犹撒,居然都是意外死亡,警方通過查閱死者的電腦和手機粒褒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進店門识颊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人奕坟,你說我怎么就攤上這事祥款。” “怎么了月杉?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵刃跛,是天一觀的道長。 經(jīng)常有香客問我苛萎,道長桨昙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任腌歉,我火速辦了婚禮蛙酪,結果婚禮上,老公的妹妹穿的比我還像新娘翘盖。我一直安慰自己桂塞,他們只是感情好,可當我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布最仑。 她就那樣靜靜地躺著藐俺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪泥彤。 梳的紋絲不亂的頭發(fā)上欲芹,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天,我揣著相機與錄音吟吝,去河邊找鬼菱父。 笑死,一個胖子當著我的面吹牛剑逃,可吹牛的內容都是我干的浙宜。 我是一名探鬼主播,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蛹磺,長吁一口氣:“原來是場噩夢啊……” “哼粟瞬!你這毒婦竟也來了?” 一聲冷哼從身側響起萤捆,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤裙品,失蹤者是張志新(化名)和其女友劉穎俗批,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體市怎,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡岁忘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了区匠。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片干像。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖驰弄,靈堂內的尸體忽然破棺而出麻汰,到底是詐尸還是另有隱情,我是刑警寧澤揩懒,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布什乙,位于F島的核電站挽封,受9級特大地震影響已球,放射性物質發(fā)生泄漏。R本人自食惡果不足惜辅愿,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一智亮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧点待,春花似錦阔蛉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至苗踪,卻和暖如春颠区,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背通铲。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工毕莱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人颅夺。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓朋截,卻偏偏與公主長得像,于是被迫代替她去往敵國和親吧黄。 傳聞我的和親對象是個殘疾皇子部服,可洞房花燭夜當晚...
    茶點故事閱讀 44,611評論 2 353

推薦閱讀更多精彩內容

  • File types(文件類型) go命令檢查目錄中特定文件的集合。它根據(jù)文件的擴展名表示要檢查的文件拗慨。這些擴展名...
    Cxb168閱讀 1,740評論 0 0
  • 1. 簡介 GO Modules 也稱作 go mod 是golang 官方最新的幾個golang 版本中推出的 ...
    楚江云閱讀 1,327評論 0 2
  • 原文鏈接 https://golang.org/cmd/go/由于內容過長廓八,分兩次發(fā)布 Go 是一個用來管理Go源...
    Cxb168閱讀 1,250評論 0 0
  • Go 1.11 Modules翻譯自 Go 官方wiki # Go 1.11 Modules 根據(jù)[提議](htt...
    drawing818閱讀 1,438評論 0 0
  • iOS | 面試知識整理 - OC基礎 (一) 1. #include厦酬、#import、@class的區(qū)別? 在C...
    d76d0c9d2b04閱讀 402評論 0 2