最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go語言基礎(chǔ)變量的聲明及初始化示例詳解

 更新時(shí)間:2021年11月17日 15:53:00   作者:楓少文  
這篇文章主要為大家介紹了Go語言基礎(chǔ)變量的聲明及初始化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進(jìn)步,早日升職加薪

一、概述

變量的功能是存儲用戶的數(shù)據(jù)

二、聲明變量

Go語言的每一個(gè)變量都擁有自己的類型,必須經(jīng)過聲明才能開始用

變量的聲明格式:

var <變量名稱> [變量類型]

 var a int   	//聲明一個(gè)整型類型的變量,可以保存整數(shù)數(shù)值
 var b string 	//聲明一個(gè)字符串類型的變量
 var c float32 //聲明一個(gè)32位浮點(diǎn)切片類型的變量,浮點(diǎn)切片表示由多個(gè)浮點(diǎn)類型組成的數(shù)據(jù)結(jié)構(gòu)  
 var d func() bool  	//聲明一個(gè)返回值為布爾類型的函數(shù)變量,這種形式一般用于回調(diào)函數(shù)
 var e struct{        //聲明一個(gè)結(jié)構(gòu)體類型的變量
      x int
  }

a.標(biāo)準(zhǔn)格式

以關(guān)鍵字var開頭,后置變量類型,行尾無須分號

var變量名 變量類型

b.批量格式

var (
    a int
    b string
    c float32
    d func() bool
    e struct {
        x int
    }
)

三、編譯器推導(dǎo)類型的格式【一定要賦值】

將類型省略后,編譯器會嘗試根據(jù)等號右邊的表達(dá)式推導(dǎo)變量的類型

var hp = 100

四、短變量聲明并初始化

將類型、var省略,把=變成=:
由于使用了“:=”,而不是賦值的“=”,因此推導(dǎo)聲明寫法的左值變量必須是沒有定義過的變量。
若定義過,將會發(fā)生編譯錯(cuò)誤

xp := 10
fp,ap=20,30

五、匿名變量——沒有名字的變量

在使用多重賦值時(shí),如果不需要在左值中接收變量,可以使用匿名變量。
匿名變量的表現(xiàn)是一個(gè)“_”下畫線,使用匿名變量時(shí),只需要在變量聲明的地方使用下畫線替換即可

a,_=10,20

六、注意

  • 編譯器推導(dǎo)類型時(shí),【一定要賦值】
  • 由于使用了“:=”,而不是賦值的“=”,因此推導(dǎo)聲明寫法的左值變量必須是沒有定義過的變量。【若定義過,將會發(fā)生編譯錯(cuò)誤】
  • 最好有兩個(gè)變量以上才能使用匿名變量【要不然失去了他的意義】

七、案例

package main
import "fmt"
import "net"
func main() {
	/*一、聲明*/
	var a int         //聲明一個(gè)整型類型的變量,可以保存整數(shù)數(shù)值
	var b string      //聲明一個(gè)字符串類型的變量
	var c float32     //聲明一個(gè)32位浮點(diǎn)切片類型的變量,浮點(diǎn)切片表示由多個(gè)浮點(diǎn)類型組成的數(shù)據(jù)結(jié)構(gòu)
	var d func() bool //聲明一個(gè)返回值為布爾類型的函數(shù)變量,這種形式一般用于回調(diào)函數(shù)
	var e struct {    //聲明一個(gè)結(jié)構(gòu)體類型的變量
		x int
	}
	var f bool //聲明一個(gè)布爾類型的變量
	fmt.Printf("a類型:%T,值:%v\n", a, a) //a類型:int,值:0
	fmt.Printf("b類型:%T,值:%q\n", b, b) //b類型:string,值:""
	fmt.Printf("c類型:%T,值:%v\n", c, c) //c類型:float32,值:0
	fmt.Printf("d類型:%T,值:%v\n", d, d) //d類型:func() bool,值:<nil>
	fmt.Printf("e類型:%T,值:%v\n", e, e) //e類型:struct { x int },值:{0}
	fmt.Printf("f類型:%T,值:%v\n", f, f) //f類型:bool,值:false
	/*二、批量聲明*/
	//	var (
	//		a int
	//		b string
	//		c float32
	//		d func() bool
	//		e struct {
	//			x int
	//		}
	//	)

	//三、編譯器推導(dǎo)類型的格式[一定要賦值,這是要編譯時(shí)進(jìn)行類型的推導(dǎo)]
	var hp = 100
	fmt.Println(hp)	
	fp,ap:=20,30
	fmt.Println(fp,ap)
	//四、短變量聲明并初始化
	//hp := 10 //error no new variables on left side of :=  在“:=”的左邊沒有新變量出現(xiàn),意思就是“:=”的左邊變量已
	//多個(gè)短變量聲明【編譯器不會報(bào)err重復(fù)定】
	conn1, err := net.Dial("tcp", "127.0.0.1:8080")
	conn2, err := net.Dial("tcp", "127.0.0.1:8080")	
	fmt.Println(conn1,err)
	fmt.Println(conn2,err)	
	//五、匿名變量——沒有名字的變量
	a,_=10,20
}

以上就是Go語言基礎(chǔ)變量的聲明及初始化示例詳解的詳細(xì)內(nèi)容,更多關(guān)于Go語言基礎(chǔ)變量的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 深入理解golang的基本類型排序與slice排序

    深入理解golang的基本類型排序與slice排序

    大家都知道排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。下面就來詳細(xì)介紹golang的基本類型排序與slice排序,有需要的朋友們可以參考借鑒。
    2016-09-09
  • golang xorm及time.Time自定義解決json日期格式的問題

    golang xorm及time.Time自定義解決json日期格式的問題

    這篇文章主要介紹了golang xorm及time.Time自定義解決json日期格式的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Golang 之協(xié)程的用法講解

    Golang 之協(xié)程的用法講解

    這篇文章主要介紹了Golang 之協(xié)程的用法講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • Go庫text與template包使用示例詳解

    Go庫text與template包使用示例詳解

    這篇文章主要為大家介紹了Go庫text與template包使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • 淺析golang?github.com/spf13/cast?庫識別不了自定義數(shù)據(jù)類型

    淺析golang?github.com/spf13/cast?庫識別不了自定義數(shù)據(jù)類型

    這篇文章主要介紹了golang?github.com/spf13/cast庫識別不了自定義數(shù)據(jù)類型,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • golang頻率限制 rate詳解

    golang頻率限制 rate詳解

    這篇文章主要介紹了golang頻率限制 rate詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Go語言中的IO操作及Flag包的用法

    Go語言中的IO操作及Flag包的用法

    這篇文章介紹了Go語言中的IO操作及Flag包的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • Go語言中Struct與繼承與匿名字段和內(nèi)嵌結(jié)構(gòu)體全面詳解

    Go語言中Struct與繼承與匿名字段和內(nèi)嵌結(jié)構(gòu)體全面詳解

    這篇文章主要介紹了Go語言中Struct與繼承與匿名字段和內(nèi)嵌結(jié)構(gòu)體,Go語言中通過結(jié)構(gòu)體的內(nèi)嵌再配合接口比面向?qū)ο缶哂懈叩臄U(kuò)展性和靈活性,感興趣的可以了解一下
    2023-04-04
  • Golang實(shí)現(xiàn)IP地址轉(zhuǎn)整數(shù)的方法詳解

    Golang實(shí)現(xiàn)IP地址轉(zhuǎn)整數(shù)的方法詳解

    在 Go 語言中,將 IP 地址轉(zhuǎn)換為整數(shù)涉及到解析 IP 地址并處理其字節(jié)表示,本文給大家介紹了Golang實(shí)現(xiàn)IP地址轉(zhuǎn)整數(shù)的方法,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-02-02
  • 一文帶你學(xué)會Go?select語句輕松實(shí)現(xiàn)高效并發(fā)

    一文帶你學(xué)會Go?select語句輕松實(shí)現(xiàn)高效并發(fā)

    這篇文章主要為大家詳細(xì)介紹了Golang中select語句的用法,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Golang有一定的幫助,需要的可以參考一下
    2023-03-03

最新評論

霞浦县| 渭南市| 西林县| 安新县| 永宁县| 武定县| 闽清县| 安多县| 南陵县| 孝昌县| 淮阳县| 交口县| 余姚市| 兴城市| 团风县| 开化县| 贵溪市| 蕲春县| 嵩明县| 寻乌县| 法库县| 广元市| 辽阳县| 温宿县| 鹰潭市| 大英县| 精河县| 浦城县| 镇安县| 寿阳县| 宜良县| 华亭县| 射阳县| 漳浦县| 九江县| 平顶山市| 芷江| 林口县| 左权县| 中卫市| 措勤县|