GO語言的各種筆記

來源:互聯網
上載者:User

標籤:使用   os   for   ar   代碼   amp   type   ad   

1、:=是不能用在函數外,如果要聲明全域變數請用關鍵字var。

2、常量是

const Name = value

3、如果變數要宣告類型:

xxx int:=1;

4、布爾值的類型為bool,值是true或false,預設為false。

5、GO語言的變數類型轉換必須是顯示轉換,也就是要有相關的代碼。

6、文本和其它類型不能直接通過+相連,要先轉換類型。

7、GO語言的變數可以以組為單位申請

var(    i int    pi float32    prefix string)

8、大寫字母開頭的變數是可匯出的,也就是其它包可以讀取的,是公用變數;小寫字母開頭的就是不可匯出的,是私人變數。

大寫字母開頭的函數也是一樣,相當於class中的帶public關鍵詞的公有函數;小寫字母開頭的就是有private關鍵詞的私人函數。

9、數組這樣聲明:

var arr [n]type

10、動態數組用slice聲明

 11、if的條件是不加括弧的

12、在名字的尾部加個冒號代表標籤,然後可以用goto跳到:

here:goto here

13、for的寫法:

 for index:=0; index < 10 ; index++ {        sum += index    }

14、類似while的文法:

sum := 1for sum < 1000 {    sum += sum}

15、GO語言是可以返還多個值:

func SumAndProduct(A, B int) (int, int) {    return A+B, A*B}

16、指標用法

//簡單的一個函數,實現了參數+1的操作func add1(a *int) int { // 請注意,    *a = *a+1 // 修改了a的值    return *a // 返回新值}func main() {    x := 3    fmt.Println("x = ", x)  // 應該輸出 "x = 3"    x1 := add1(&x)  // 調用 add1(&x) 傳x的地址    fmt.Println("x+1 = ", x1) // 應該輸出 "x+1 = 4"    fmt.Println("x = ", x)    // 應該輸出 "x = 4"}

17、使用關鍵字defer可以使程式先跳過等到執行完再返回執行

func ReadWrite() bool {    file.Open("file")    defer file.Close()    if failureX {        return false    }    if failureY {        return false    }    return true}

18、如果有很多調用defer,那麼defer是採用後進先出模式,所以如下代碼會輸出4 3 2 1 0

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.