Go 语言基础(一)
生活随笔
收集整理的這篇文章主要介紹了
Go 语言基础(一)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、區(qū)別于其他語(yǔ)言的特點(diǎn): 清晰并且簡(jiǎn)潔、并行(線(xiàn)和 goroutines)、Channel、快速、安全、標(biāo)準(zhǔn)格式化、 類(lèi)型后置(var a int)、UTF-8、開(kāi)源、開(kāi)心 Erlang[7] 與 Go 在部分功能上類(lèi)似。Erlang 和 Go 之間主要的區(qū)別是 Erlang 是函 數(shù)式語(yǔ)言,而 Go 是命令式的。Erlang 運(yùn)行在虛擬機(jī)上,而 Go 是編譯的。Go 用 起來(lái)感覺(jué)更接近 Unix 二、Hello World package main imort "fmt" // 實(shí)現(xiàn)格式化的I/O /*Print something*/ func main(){ fmt.Printf("Hello,word\n"); } 注:packagemain必須首先出現(xiàn),緊跟著是import。在Go中,package總是首先出現(xiàn), 然后是 import,然后是其他所有內(nèi)容。當(dāng) Go 程序在執(zhí)行的時(shí)候,首先調(diào)用的函 數(shù)是 main.main(),這是從 C 中繼承而來(lái)。 編譯和運(yùn)行代碼 %go build helloworld.go 會(huì)生成一個(gè)叫helloworld 的可執(zhí)行文件 %./helloword Hello,world 三、變量 ,要先聲明后賦值 var a int 聲明 a =15 賦值 等同于 a :=15 直接聲明并賦值 多個(gè)變量: var ( x int b bool ) 或者如果都是 整型,可以聲明 var a,b int 平行賦值 a, b := 20, 16 注: 如果你希望將兩個(gè)(或更多)語(yǔ)句放在一 行書(shū)寫(xiě),它們必須用分號(hào) (’;’) 分隔。一般情況下,你不需要分號(hào) 一個(gè)特殊的變量名是 _(下劃線(xiàn))。任何賦給它的值都被丟棄。在這個(gè)例子 中,將 35 賦值給 b,同時(shí)丟棄 34。 _, b := 34, 35 Go 的編譯器對(duì)聲明卻未使用的變量在報(bào)錯(cuò) 四、變量類(lèi)型 1、布爾類(lèi)型 true 和 false 2、數(shù)字類(lèi)型 int ,你可以使用 int32 或者 uint32。完整的整數(shù)類(lèi)型列表 (符號(hào)和無(wú)符號(hào))是 int8,int16,int32,int64 和 byte,uint8,uint16,uint32, uint64。 byte 是 uint8 的別名。浮點(diǎn)類(lèi)型的值有 float32 和 float64 注:賦值可以用八進(jìn)制、十六進(jìn)制或科學(xué)計(jì)數(shù)法: 077,0xFF,1e3 或者 6.022e23 這 些都是合法的。 3、常量 const x=4 const ( a = 0 ← Is an int now b string = "0" ) 4、字符串 s := "Hello World!" 必須是雙引號(hào) 或者 var s string = "hello" 注: 一旦給變量賦值,字符串就不能修改了 多行字符串: s := "Starting part" + "Ending part" 會(huì)被轉(zhuǎn)換為: s := "Starting part"; + "Ending part"; 這是錯(cuò)誤的語(yǔ)法,應(yīng)當(dāng)這樣寫(xiě): s := "Starting part" + "Ending part" 另一種方式是使用反引號(hào) ` 作為原始字符 串符號(hào): s := `Starting part Ending part` 另: rune Rune 是 int32 的別名。用 UTF-8 進(jìn)行編碼。這個(gè)類(lèi)型在什么時(shí)候使用呢?例如需 要遍歷字符串中的字符。可以循環(huán)每個(gè)字節(jié)(僅在使用 US ASCII 編碼字符串時(shí) 與字符等價(jià),而它們?cè)?Go 中不存在!)。因此為了獲得實(shí)際的字符,需要使用 rune 類(lèi)型。 5、復(fù)數(shù) 它的變量類(lèi)型是 complex128 (64 位虛數(shù)部分)。如果需要小 一些的,還有 complex64 – 32 位的虛數(shù)部分。復(fù)數(shù)寫(xiě)為 re + imi,re 是實(shí)數(shù)部分, im 是虛數(shù)部分,而 i 是標(biāo)記 ’i’ (√?1)。使用復(fù)數(shù)的一個(gè)例子: var c complex64 = 5+5i;fmt.Printf("Value is: %v", c) 將會(huì)打印:(5+5i) 6、錯(cuò)誤 Go 有為了錯(cuò)誤而 存在的內(nèi)建類(lèi)型,叫做 error。 var a error 定義了 a 為一個(gè) error,a 的值是 nil。 五、運(yùn)算符和內(nèi)建函數(shù) + - * / 和% 會(huì)像你期望的那樣工作,& | ^ 和&^ 分別表示位運(yùn)算符按位與, 按 位或,按位異或和位清除。 && 和 || 運(yùn)算符是邏輯與和邏輯 或。表格中沒(méi)有列 出的是邏輯非:!。 雖然 Go 不支持運(yùn)算符重載(或者方法重載),而一些內(nèi)建運(yùn)算符卻支持重載。 Go 保留字:
轉(zhuǎn)載于:https://www.cnblogs.com/wjq310/p/6545451.html
總結(jié)
以上是生活随笔為你收集整理的Go 语言基础(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 20145226夏艺华 《Java程序设
- 下一篇: 数据结构(8)----栈与队列之循环队列