Golang學習筆記-1.3 變數

來源:互聯網
上載者:User

本文系第三篇Golang語言學習教程
var聲明語句可以建立一個特定類型的變數,然後給變數附加一個名字,並且設定變數的初始值。
變數聲明文法如下

var 變數名 類型 = 運算式

例:

var age int = 19

其中“類型”“=運算式”兩個不分可以省略其中一個。

如果省略類型,那麼將根據初始運算式來確定類型資訊。
如果省略=運算式,那麼將用零值初始化該變數。

例1:

package mainimport "fmt"func main() {        var age = 19 //省略類型,根據自動運算式確定age類型        fmt.Println("Hello World,my age is",age)}

上面的程式將會列印:

Hello World,my age is 19

例2:

package mainimport "fmt"func main(){    var age int //省略運算式,預設用0初始化該變數    fmt.Println("Hello World,my age is",age)}

上面的程式將會列印:

Hello World,my age is 0

聲明多個變數

Go能夠通過一條語句聲明多個變數。
聲明多個變數文法如下

var name1, name2 type = initialvalue1, initialvalue2

例:

package mainimport "fmt"func main(){        var height,weight = 178,57 //聲明兩個變數身高,體重        fmt.Println("my height is",height,"and my weight is",weight)}

上面的程式將會列印:

my height is 178 and my weight is 57

在某些情況下我們可能需要在一個語句中聲明不同類型的變數。
一個語句聲明不同類型的變數文法如下

var (   name1 = initialvalue1   name2 = initialvalue2)例:```gopackage mainimport "fmt"func main(){       var (           name = "xunk"           age = 19           height = 178       )       fmt.Println("my name is",name,",my age is",age,"and my heiget is",height)}

上面的程式將會列印:

my name is xunk ,my age is 19 and my heiget is 178

簡短聲明

Go支援一種聲明變數的簡潔方式,使用了:=操作符,稱為簡短聲明。
簡短聲明文法如下:

name := initialvalue

例:

package mainimport "fmt"func main(){        name,age := "xunk",19 //簡短聲明name,age        fmt.Println("my name is",name,"my age is",age)}

上面的程式將會列印:

my name is xunk my age is 19

:=簡短聲明左邊所有變數都要有初始值,並且操作符左邊必須要有一個變數是尚未聲明的。

變數也可以在運行時進行賦值。
例:

package mainimport (        "fmt"        "math")func main(){        a,b := 25.3,73.1 //聲明a,b變數        c := math.Min(a,b) //比較a,b最小值,賦值給c        fmt.Println("The minimum values is",c)}

上面的程式將會列印:

The minimum values is 25.3


由於 Go 是強型別(Strongly Typed)語言,因此不允許某一類型的變數賦值為其他類型的值。

package mainfunc main() {      age := 29      // age是int類型    age = "naveen" // 錯誤,嘗試賦值一個字串給int類型變數}

以上程式會報錯:

(type string) as type int in assignment

不可以將賦值一個字串給int類型變數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.