-
gofmt:統(tǒng)一的代碼風(fēng)格
查看全部 -
內(nèi)置runtime,性能監(jiān)控和GC
查看全部 -
?? iota只能在常量定義時(shí)候使用,不可以在別的函數(shù)里使用
? ?
?? iota跳值使用法:
?? 原來(lái)的定義:
??????? const(
????? a=iota//a=0
?? ?? b=iota//b=1
?? ?? c=iota//c=2
?? ?? )
?? ? ?
?? ?? 如果想將c變?yōu)?,可以用"_"(變量聲明的時(shí)候它相當(dāng)于垃圾桶,常量iota使用的時(shí)候它具有使iota加1的功能)
?? ? ?
?? ???? const(
????? a=iota//a=0
?? ?? b=iota//b=1
?? ?? _
?? ?? c=iota//c=3
?? ?? )
?? ? ?
?? ? ?
?? ?? 插隊(duì)使用法:
?? ? ??? ?const(
????? a=iota//a=0
?? ?? b=2
?? ?? c=iota//c=1
?? ?? )
?? ?? 就是說(shuō)不連續(xù)用iota賦值,中間插入另外的常量,這就是插隊(duì)使用法
?? ? ?
?? ?? 表達(dá)式隱式使用法:
?? ???? const(
????? a=iota*2//a=0
?? ?? b?????? //b自動(dòng)被賦值為iota*2==1*2==2
?? ?? c?????? //b自動(dòng)被賦值為iota*2==2*2==4
?? ?? )
?? ?? 沒(méi)有賦值表達(dá)式的時(shí)候,會(huì)被自動(dòng)賦值為上面遇到的第一個(gè)表達(dá)式
?? ? ?
?? ? ?
?? ?? 單行使用法:
?? ???? const(
????? a,b=iota,iota+3//a=0,b==0+3==3
?? ?? c,d???? //c=iota==1,d=iota+3==1+3==4
?? ?? f=iota? //f==iota==2
?? ?? )
?? ?? 注意是每一行,iota只加1,不管這一行聲明了多少常量查看全部 -
?常量也可以單行聲明并賦值:
?const apple,banana string=”蘋(píng)果“,”香蕉“
?const a,b=1,"你好"(隱式聲明常量會(huì)自動(dòng)識(shí)別數(shù)據(jù)類(lèi)型)
?UTF8每個(gè)漢字占三個(gè)字節(jié)大小查看全部 -
常量的定義充形式上可分為顯示和隱式:
?? 顯示:const identifier [type] =value
?? 隱式 :const identifier =value(通常叫無(wú)類(lèi)型常量)
常量可以提使用內(nèi)置表達(dá)式定義:如:len(),unsafe.Sizeof()等
常量范圍目前只支持布爾型、數(shù)字型、(整數(shù)型、浮點(diǎn)型和復(fù)數(shù))和字符串型查看全部 -
var a,b,c int =1,2,3? 可以變成 var a,b,c =1,2,3 (省略類(lèi)型) 還可以變成 a,b,c :=1,2,3(省略掉var)
不過(guò)要注意的是:var只能在函數(shù)體內(nèi)做局部變量時(shí)省略,而數(shù)據(jù)類(lèi)型都可以省略
?"_"相當(dāng)于一個(gè)垃圾桶,把不要的值丟到垃圾桶里查看全部 -
? 單個(gè)變量的聲明和賦值:
? 1.變量的聲明格式:var<變量名稱(chēng)>[變量類(lèi)型]
? 2.變量的賦值格式:<變量名稱(chēng)>=<值,表達(dá)式,函數(shù)等>
? 3.聲明和賦值同時(shí)進(jìn)行:var<變量名稱(chēng)>[變量類(lèi)型]=<值,表達(dá)式,函數(shù)等>
? 4.分組聲明格式:
? var(
???? i int
?? ? j float32
?? ? name string
?? ? )
?? ?
?? ?
同一行聲明多個(gè)變量和賦值:var a,b,c int =1,2,3 或者a,b:=1,2
全局變量的聲明必須使用var關(guān)鍵字,局部變量則可以省略
特殊變量下劃線(xiàn)"_"
?
go中不存在隱式轉(zhuǎn)換,類(lèi)型轉(zhuǎn)換必須是顯式的
類(lèi)型轉(zhuǎn)換只能發(fā)生在兩種兼容類(lèi)型之間
類(lèi)型轉(zhuǎn)換格式:<變量名稱(chēng)>[:]=<目標(biāo)類(lèi)型>(<需要轉(zhuǎn)換的變量>)
大寫(xiě)字母開(kāi)頭的變量是可導(dǎo)出的,也就是其他包可讀取的,是公用變量:
小寫(xiě)字母開(kāi)頭的就是不可導(dǎo)出的,是私有變量查看全部 -
數(shù)據(jù)類(lèi)型:
? 數(shù)值類(lèi)型,字符類(lèi)型和布爾類(lèi)型;
? 派生類(lèi)型;
? 類(lèi)型零值和類(lèi)型別名
? 類(lèi)型所占存儲(chǔ)大小
?
? 數(shù)據(jù)類(lèi)型:
? 整形、浮點(diǎn)型、復(fù)數(shù)、字符串、和布爾型
? 數(shù)據(jù)內(nèi)存的出現(xiàn)是為了把數(shù)據(jù)分成所需內(nèi)存大小不同的數(shù)據(jù),編程的時(shí)候需要用大數(shù)據(jù)的時(shí)候才需要申請(qǐng)大內(nèi)存,就可以充分利用內(nèi)存。
? 布爾的值只可以是常量true或者false
? 字符串類(lèi)型string,統(tǒng)一編碼為“UTF-8”.
?
? uint8;無(wú)符號(hào)8位整型
? uint16;無(wú)符號(hào)16位整型
? uint32;無(wú)符號(hào)32位整型
? uint64;無(wú)符號(hào)64位整型
? int8;有符號(hào)8位整型
? int16;有符號(hào)16位整型
? int32;有符號(hào)32位整型
? int64;有符號(hào)64位整型
?
? float32 32位浮點(diǎn)型數(shù)
? float64 84位浮點(diǎn)型數(shù)
? complex64 32位實(shí)數(shù)和虛數(shù)
? complex128 64位實(shí)數(shù)和虛數(shù)
?
? byte 類(lèi)似uint8
? rune 類(lèi)似int32
? uint 32位或64位(具體大小根據(jù)每個(gè)計(jì)算機(jī)的操作系統(tǒng)大小來(lái)定)
? int? 與uint一樣大小
? uintptr 無(wú)符號(hào)整型,用于存放一個(gè)指針
?
? 派生類(lèi)型:
? 指針類(lèi)型(pointer)
? 數(shù)組類(lèi)型
? 結(jié)構(gòu)化類(lèi)型(struct)
? Channel類(lèi)型(chan)
? 函數(shù)類(lèi)型(func)
? 切片類(lèi)型(slice)
? 接口類(lèi)型(interface)
? Map類(lèi)型(map)
?
? 類(lèi)型零值和類(lèi)型別名:
? 類(lèi)型零值不是空值,而是某個(gè)變量被聲明后的默認(rèn)值,一般情況下,值類(lèi)型默認(rèn)值為0,布爾型默認(rèn)值為false,string默認(rèn)值為空字符串(就是什么也沒(méi)有);
? 我們可以對(duì)類(lèi)型設(shè)置別名,但是別名和原數(shù)據(jù)類(lèi)型的類(lèi)型不一樣,比如說(shuō)type 別名 int16 (這時(shí)用別名定義的變量和用int16定義的變量不可以一起運(yùn)算,而全部用別名定義的變量可以)查看全部 -
import別名,“.”,"_"
別名操作的含義是:將導(dǎo)入的包命名為另一個(gè)容易記憶的別名
點(diǎn)(.)操作的含義是:點(diǎn)(.)標(biāo)識(shí)的包導(dǎo)入后,調(diào)用該包中函數(shù)時(shí)可以省略前綴包名;
下劃線(xiàn)(_)操作的含義是:導(dǎo)入該包,但不導(dǎo)入整個(gè)包,而是執(zhí)行該包中的init函數(shù),因此無(wú)法通過(guò)包名來(lái)調(diào)用包中其他的函數(shù)。使用下劃線(xiàn)(_)操作往往是為了注冊(cè)包里的引擎,讓外部可以方便地使用;
???查看全部 -
import 的基本原理:
? 如果一個(gè)main導(dǎo)入其他包,包將被順序?qū)?br />? 如果導(dǎo)入的包中以來(lái)其他包(包B),會(huì)首先導(dǎo)入B包,然后初始化B包中的常量與變量,最后如果B中有init,會(huì)自動(dòng)執(zhí)行initial();
? 所有包到入完成之后才會(huì)對(duì)main中常量和變量進(jìn)行初始化,然后執(zhí)行main中的init函數(shù)(如果存在),最后執(zhí)行main函數(shù);
? 如果一個(gè)包被導(dǎo)入多次則該包只會(huì)被導(dǎo)入一次;查看全部 -
const
查看全部 -
語(yǔ)言學(xué)習(xí)查看全部
-
1
查看全部 -
https://golang.org這個(gè)網(wǎng)址在國(guó)內(nèi)應(yīng)該不好打開(kāi),學(xué)習(xí)的同學(xué),可以轉(zhuǎn)go語(yǔ)言中文網(wǎng),網(wǎng)址:https://studygolang.com
查看全部 -
gofmt
查看全部
舉報(bào)