下面介紹一下go語言中的if語句和switch語句。另外還有一種控制語句叫select語句,通常與通道聯(lián)用,這里不做介紹。
創(chuàng)新互聯(lián)專注于韶關(guān)網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供韶關(guān)營銷型網(wǎng)站建設(shè),韶關(guān)網(wǎng)站制作、韶關(guān)網(wǎng)頁設(shè)計、韶關(guān)網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造韶關(guān)網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供韶關(guān)網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
Go中的方法,是一種特殊的函數(shù),定義域struct之上(與struct關(guān)聯(lián)、綁定),被稱為struct的接受者(receiver)。通俗的講,方法就是有接收者的函數(shù)。
Go 從C語言繼承了相似的表達式語法、控制流結(jié)構(gòu)、基礎(chǔ)數(shù)據(jù)類型、調(diào)用參數(shù)傳值、指針等很多思想,還有C語言一直所看中的編譯后機器碼的運行效率以及和現(xiàn)有操作系統(tǒng)的無縫適配。
剛?cè)腴TGo語言小白需要注意以下五點:注意書寫代碼的一些規(guī)范吧,特別是注意大小寫、英文標點符號區(qū)別等,在特別的位置寫上注釋。主要是理解偽代碼所描述的算法,偽代碼要注意是不能直接運行的。
Go語言中通過結(jié)構(gòu)體的內(nèi)嵌再配合接口比面向?qū)ο缶哂懈叩臄U展性和靈活性。 自定義類型 在Go語言中有一些基本的數(shù)據(jù)類型,如string、整型、浮點型、布爾等數(shù)據(jù)類型, Go語言中可以使用type關(guān)鍵字來定義自定義類型。
在 Go 語言中,結(jié)構(gòu)體是一種值類型,當傳遞結(jié)構(gòu)體參數(shù)時,會進行值拷貝。如果結(jié)構(gòu)體字段是小寫的,它們在外部是不可見的,不能被讀取或者訪問,因此我們必須對字段進行大寫。
于c語言相同,go中也有指針和結(jié)構(gòu)體的概念。指針表示變量的內(nèi)存地址,結(jié)構(gòu)體用來存儲同一類型的數(shù)據(jù)。定義一個指針變量,將變量a的地址賦給指針變量p。這樣,指針變量p也就指向了變量a所在的內(nèi)容空間。
1、可以省略嵌入的Reader字段,而直接訪問ReaderName 此時book是一個各個屬性全是對應(yīng)類型零值的一個實例。不是nil。這種情況在Go中稱為零值可用。不像java會導(dǎo)致npe 結(jié)構(gòu)體定義時可以在字段后面追加標簽說明。
2、按值傳遞函數(shù)參數(shù),是拷貝參數(shù)的實際值到函數(shù)的形式參數(shù)的方法調(diào)用。在這種情況下,參數(shù)在函數(shù)內(nèi)變化對參數(shù)不會有影響。默認情況下,Go編程語言使用調(diào)用通過值的方法來傳遞參數(shù)。
3、因為struct是值類型,如果結(jié)構(gòu)體比較復(fù)雜的話,值拷貝性能開銷會比較大,所以該構(gòu)造函數(shù)返回的是結(jié)構(gòu)體指針類型。 調(diào)用構(gòu)造函數(shù) 方法和接收者 Go語言中的方法(Method)是一種作用于特定類型變量的函數(shù)。
4、golang 中沒有引用傳遞,只有值和指針傳遞。
5、Go 語言不需要你主動調(diào)用 malloc 來分配堆空間,編譯器會自動分析,找出需要 malloc 的變量,使用堆內(nèi)存。編譯器的這個分析過程就叫做逃逸分析。