go的變數、常量、類型別名

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

go語言的基本類型如下:





類型變數 執行個體代碼:

package mainimport "fmt"/*所有變數都可使用類型推斷  全域變數必須使用var可以var(),可並行,可推斷  局部變數不可使用var(),只可並行,可推斷*/func main() {    //bool布爾型--先聲明後賦值    var a bool    fmt.Println(a)    a = true    fmt.Println(a)    //int8/uint8--聲明並賦值    var b int8 = -128    var b1 uint8 = 255    fmt.Println(b)    fmt.Println(b1)    //byte(uint8別名)類型--系統推測類型方式    var c1 = 255    var c2 byte = 255    fmt.Println(c1)    fmt.Println(c2)    //int16/uint16--最簡單賦值聲明方式    d1 := -32768    d2 := 65535    fmt.Println(d1)    fmt.Println(d2)    //int32(rune)/uint32--var並行    var e1, e2 int32 = -2147483648, 2147483647    var e3, e4 uint32 = 0, 4294967295    fmt.Println(e1, e2, e3, e4)    //int64/uint64--var()    var (        f1     int64  = -46744073709551616        f2, f3 uint64 = 18446744073709551615, 184467443709551615    )    fmt.Println(f1, f2, f3)    //浮點型float32/float64--同類型顯示轉換    var g1 float32 = 1.1    var g2 = int8(g1)    var g3 = uint8(g1)    var g4 int16 = int16(g1)    g5 := uint16(g1)    //  var g6 bool = int8(g1)    fmt.Println(g1, g2, g3, g4, g5)    //string類型    var h1 string = "myString"    fmt.Println(h1)}

輸出如下:

falsetrue-128255255255-3276865535-2147483648 2147483647 0 4294967295-46744073709551616 18446744073709551615 1844674437095516151.1 1 1 1 1myString



類型別名:

package mainimport "fmt"/*類型別名*/func main() {    //bool布爾型--先聲明後賦值    var a []int8    fmt.Println(a)    var b [3]int8    fmt.Println(b)    var c byte = 127    fmt.Println(c)    var d rune = 2147483647    fmt.Println(d)    var e 文本 = "myString"    fmt.Println(e)}//byte uint8別名//rune int32別名//在本例type中實際做了轉換type (    byte int8    rune uint32    文本   string)

輸出如下:

[][0 0 0]1272147483647myString



數字轉文字格式設定、數字轉字串類型的十進位

package mainimport "fmt"import "strconv"func main() {    var a int = 65    //將資料轉為文字格式設定,是用65表示的文本A    b := string(a)    fmt.Println(b)    //數字-->>字串,返回數字 i 所表示的字串類型的十進位數。    c := strconv.Itoa(a)    fmt.Println(c)    c = "myString"    fmt.Println(c)}

輸出如下:

A65myString



常量:

package mainimport "fmt"func main() {    fmt.Println(a, b, c, d, e, f, g, h, i, j, k, m, n)    fmt.Println(aa, bb, cc, dd, ee, ff, gg, hh)}const a int = 1const b, c, k = 'a', 'A', "hhehe"const (    d = 1    e = d + 1    f    g, h = 2, 3    //l gh是2個是無法輸出的    m, n    i = "aaa"    j = len(i))const (    aa = "ggg"    bb = iota    cc    dd = iota)const (    ee = iota    ff    gg = "aaa"    hh)

輸出如下:

1 97 65 1 2 2 2 3 aaa 3 hhehe 2 3ggg 1 2 3 0 1 aaa aaa



運算子:

package mainimport "fmt"/*a-- a++是作為一個運算子,不是一個運算式而且-- ++只能在後邊*/func main() {    a := 3    a--    fmt.Println(a)    //指向a的p指標    var p *int = &a    fmt.Println(*p)}

輸出如下:

22
相關文章

聯繫我們

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