1. 程式人生 > 其它 >Golang語言社群--Go語言基礎第二節變數

Golang語言社群--Go語言基礎第二節變數

大家好,我是社群主編cserli(或者大家叫我彬哥也可以),Golang語言社群一直致力於Go語言相關技術乾貨的分享,希望初學者可以少走些彎路,我僅僅是提供一個快捷學習的平臺,希望越來越多的人熟知Go語言。這節課給大家帶來的是關於Go語言的基礎變數的文章。不管任何開發語言,變數是我們首選熟知的一個名詞,那麼什麼是開發語言的變數哪?變數其實就是隨著某些關聯的條件發生變化後,變數的資料隨之改變的一個具有固定意義但值不確定的名詞。

那麼Go語言是如何定義和使用變數那?如下

變數宣告語句:

var 變數名 變數型別

例子:

var v1 int           // 整數  
var v2 string         // 字串
var v3 [10]int               // 陣列
var v4 []int                  // 陣列切片
var v5 struct {        // 結構體
    f int
    d string
}  
var v6 *int                  // 指標
var v7 map[string]int        // map,key為string型別,value為int型別
var v8 func(a int) int       

可以使用一個var關鍵字同時宣告多個變數:

var (
    v1 int
    v2 string
    v3 map[string]int    
)

如果在宣告變數的同時還進行了初始化,則var關鍵字可以省略,並且Go編譯器可以從初始化表示式的右值推匯出該變數應該宣告為哪種型別,這有點類似於動態型別,但Go實際上是強型別的語言(靜態型別語言)。

如下所示三種用法的效果是一樣的:

var v1 int = 10
v2 int = 10    // 編譯器自動推匯出v2的型別
v3 := 10      // 編譯器自動推匯出v3的型別

說明:

":="用於明確表達同時進行變數宣告和初始化工作,但要注意出現在:=左側的變數不應該是已經被宣告過的,否則會導致編譯器報錯,如下:

var i int
i := 2     //error

這節就暫時到這裡,下節課我們來聊聊常量在Go語言中的相關知識。