2021-10-21
Go語(yǔ)言時(shí)靜態(tài)類型語(yǔ)言,變量需要明確類型
聲明變量的一般形式使用var關(guān)鍵字
var name type
其中,var 是聲明變量的關(guān)鍵字贾铝,name 是變量名澄暮,type 是變量的類型悯搔。
需要注意的是后裸,Go語(yǔ)言和許多編程語(yǔ)言不同舀武,它在聲明變量時(shí)將變量的類型放在變量的名稱之后蓬坡。
Go語(yǔ)言的基本類型有:
- bool //布爾
- string //字符串
- int矫户、int8片迅、int16、int32皆辽、int64 //有符號(hào)整形
- uint柑蛇、uint8、uint16驱闷、uint32耻台、uint64、uintptr //無(wú)符號(hào)整型
- byte // uint8 的別名
- rune // int32 的別名 代表一個(gè) Unicode 碼
- float32空另、float64 //浮點(diǎn)數(shù)
- complex64盆耽、complex128
當(dāng)一個(gè)變量被聲明之后,系統(tǒng)自動(dòng)賦予它該類型的零值:int 為 0扼菠,float 為 0.0摄杂,bool 為 false,string 為空字符串循榆,指針為 nil 等析恢。所有的內(nèi)存在 Go 中都是經(jīng)過(guò)初始化的。
標(biāo)準(zhǔn)格式
Go語(yǔ)言的變量聲明的標(biāo)準(zhǔn)格式為:
var 變量名 變量類型
變量聲明以關(guān)鍵字 var 開(kāi)頭秧饮,后置變量類型映挂,行尾無(wú)須分號(hào)。
批量格式
覺(jué)得每行都用 var 聲明變量比較煩瑣盗尸?沒(méi)關(guān)系柑船,還有一種為懶人提供的定義變量的方法:
var (
a int
b string
c []float32
d func() bool
e struct {
x int
}
)
使用關(guān)鍵字 var 和括號(hào),可以將一組變量定義放在一起振劳。
簡(jiǎn)短格式
除 var 關(guān)鍵字外椎组,還可使用更加簡(jiǎn)短的變量定義和初始化語(yǔ)法。
名字 := 表達(dá)式
需要注意的是历恐,簡(jiǎn)短模式(short variable declaration)有以下限制:
- 定義變量寸癌,同時(shí)顯式初始化。
- 不能提供數(shù)據(jù)類型弱贼。
- 只能用在函數(shù)內(nèi)部蒸苇。
和 var 形式聲明語(yǔ)句一樣,簡(jiǎn)短變量聲明語(yǔ)句也可以用來(lái)聲明和初始化一組變量:
i, j := 0, 1
下面通過(guò)一段代碼來(lái)演示簡(jiǎn)短格式變量聲明的基本樣式吮旅。
func main() { x:=100 a,s:=1, "abc"}
因?yàn)楹?jiǎn)潔和靈活的特點(diǎn)溪烤,簡(jiǎn)短變量聲明被廣泛用于大部分的局部變量的聲明和初始化味咳。var 形式的聲明語(yǔ)句往往是用于需要顯式指定變量類型地方,或者因?yàn)樽兞可院髸?huì)被重新賦值而初始值無(wú)關(guān)緊要的地方檬嘀。
學(xué)習(xí)地址:http://c.biancheng.net/view/9.html