【Go學習筆記】 5、控制語句

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

指標

Go雖然保留了指標,但與其他程式設計語言不同的是,在Go當中不支援指標運算以及“->”運算子,而直接採用“.”選擇符來操作指標目標對象的成員

  • 操作符 “&”取變數地址,使用“ * ” 通過指標間接訪問目標對象
  • 預設值為nil而非NULL

遞增遞減語句

在Go當中,++與– 是作為語句而並不是作為運算式。

選擇語句switch

  • 可以使用任何類型或運算式作為條件陳述式
  • 不需要寫break,一旦條件符合自動終止
  • 如希望繼續執行下一個case,需使用fallthrough語句
  • 支援一個初始設定式(可以是並行方式),右側需跟分好
  • 左大括弧必須和條件陳述式在同一行
12345678910111213141516171819202122232425262728293031323334353637
func main(){a := 1switch a {case 0:fmt.Println("a=0")case 1:fmt.Println("a=1")}fmt.Println(a)}func main(){a := 1switch {case a >= 0:fmt.Println("a=0")fallthroughcase a >= 1:fmt.Println("a=1")}fmt.Println(a)}func main(){switch a := 1; {case a >= 0:fmt.Println("a=0")fallthroughcaes a >= 1:fmt.Println("a=1")}}

跳躍陳述式goto break continue

  • 三個語句都可以配合標籤使用
  • 標籤名區分大小寫,若不使用會造成編譯錯誤
  • break 和continue配合標籤可用於多層迴圈的跳出
  • goto 是調整執行位置,與其他2個語句配合標籤的結果並不相同
1234567891011121314151617181920212223242526
func main(){LABEL:for{for i := 1;i < 10;i++ {if i > 2{break LABEL}else{fmt.Println(i)}}}}func main(){LABEL:for i := 0;i < 10;i++ {for {fmt.Println(i)continue LABEL}}}

聯繫我們

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