GO語言語法---For循環、break、continue

文章目錄

  • 1. 基本for循環(類似其他語言的while)
  • 2. 經典for循環(初始化;條件;后續操作)
  • 3. 無限循環
  • 4. 使用break和continue
  • 5 . 帶標簽的循環(可用于break/continue指定循環)
    • 1、break帶標簽
    • 2、continue帶標簽

Go語言中的for循環是唯一的循環結構,但可以通過不同形式實現各種循環需求。以下是Go中for循環的主要用法:

1. 基本for循環(類似其他語言的while)

go語言中沒有while和do while操作,只能用基本for循環來代替while和do while。
基本語法:

for condition {// 循環體
}

示例代碼:
以下for循環的執行順序:
1、先判斷i <= 3
2、執行大括號中的內容。
一直循環到判斷條件不滿足才退出。

i := 1
for i <= 3 {fmt.Println(i)i = i + 1
}

2. 經典for循環(初始化;條件;后續操作)

基本語法:

for initialization; condition; post {// 循環體
}

示例代碼:
以下for循環的執行順序:
1、先執行j := 7(這里可以不是定義,也可以是賦值,也可以省略)
2、進行condition判斷,為true則進入第3步,false則退出for循環。
3、執行大括號中的內容。
4、執行post。
一直執行2、3、4直到2中判斷為false。

for j := 7; j <= 9; j++ {fmt.Println(j)
}

3. 無限循環

基本語法:

for {// 無限循環體// 通常配合break使用
}

示例代碼:
這個就相當于C語言中的while(1)語句。

for {fmt.Println("loop")break
}

4. 使用break和continue

1、break:跳出本層循環
2、continue:跳過本次循環
示例代碼:
1、代碼執行到break則直接退出這一層for循環,因為這里只有一層for循環,所以直接退出for循環。
2、代碼執行到continue則直接進入循環,這里當n = 2的時候進入continue,則跳出本次循環,繼續執行n++,再進行n <= 5判斷,進入下一次循環。

for n := 0; n <= 5; n++ {if n%2 == 0 {continue}fmt.Println(n)if n > 3 {break}
}

5 . 帶標簽的循環(可用于break/continue指定循環)

1、break帶標簽

代碼如下:
下面這段代碼的輸出結果:
0 0
0 1
0 2
1 1
當i = 1,j = 1的時候,跳出到標簽處,跳出那一層循環,因此直接退出for循環。

outer:
for i := 0; i < 3; i++ {for j := 0; j < 3; j++ {if i == 1 && j == 1 {break outer  // 跳出外層循環}fmt.Println(i, j)}
}

2、continue帶標簽

代碼如下:
下面這段代碼的輸出結果:
0 0
0 1
0 2
1 0
2 0
2 1
2 2
當i = 1,j = 1的時候,跳出到標簽處,跳出那一次循環,因此直接最外層i = 1的時候不繼續往下執行。

outer:
for i := 0; i < 3; i++ {for j := 0; j < 3; j++ {if i == 1 && j == 1 {continue outer  // 跳出外層循環}fmt.Println(i, j)}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/906104.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906104.shtml
英文地址,請注明出處:http://en.pswp.cn/news/906104.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CSS- 4.4 固定定位(fixed) 咖啡售賣官網實例

本系列可作為前端學習系列的筆記&#xff0c;代碼的運行環境是在HBuilder中&#xff0c;小編會將代碼復制下來&#xff0c;大家復制下來就可以練習了&#xff0c;方便大家學習。 HTML系列文章 已經收錄在前端專欄&#xff0c;有需要的寶寶們可以點擊前端專欄查看&#xff01; 點…

分布式微服務系統架構第132集:Python大模型,fastapi項目-Jeskson文檔-微服務分布式系統架構

加群聯系作者vx&#xff1a;xiaoda0423 倉庫地址&#xff1a;https://webvueblog.github.io/JavaPlusDoc/ https://1024bat.cn/ https://github.com/webVueBlog/fastapi_plus 這個錯誤是由于 Python 3 中已經將線程的 isAlive() 方法更名為 is_alive()&#xff0c;但你的調試工…

react路由中Suspense的介紹

好的&#xff0c;我們來詳細解釋一下這個 AppRouter 組件的代碼。 這個組件是一個在現代 React 應用中非常常見的模式&#xff0c;特別是在使用 React Router v6 進行路由管理和結合代碼分割&#xff08;Code Splitting&#xff09;來優化性能時。 JavaScript const AppRout…

C語言內存函數與數據在內存中的存儲

一、c語言內存函數 1、memcpy函數是一個標準庫函數&#xff0c;用于內存復制。功能上是用來將一塊內存中的內容復制到另一塊內存中。用戶需要提供目標地址、源地址以及要復制的字節數。例如結構體之間的復制。 memcpy函數的原型是&#xff1a;void* memcpy&#xff08;void* …

層次原理圖

層次原理圖簡介 層次原理圖&#xff08;Hierarchical Schematic&#xff09;是一種常用于電子工程與系統設計的可視化工具&#xff0c;通過分層結構將復雜系統分解為多個可管理的子模塊。它如同“設計藍圖”&#xff0c;以樹狀結構呈現整體與局部的關系&#xff1a;頂層展現系…

流程編輯器Bpmn與LogicFlow學習

工作流技術如何與用戶交互結合&#xff08;如動態表單、任務分配&#xff09;處理過 XML 與 JSON 的轉換自定義過 bpmn.js 的樣式&#xff08;如修改節點顏色、形狀、圖標&#xff09;擴展過上下文菜單&#xff08;Palette&#xff09;或屬性面板&#xff08;Properties Panel&…

LWIP的NETCONN接口

NETCONN接口簡介 NETCONN API 使用了操作系統的 IPC 機制&#xff0c; 對網絡連接進行了抽象&#xff0c;使用同一的接口完成UDP和TCP連接 NETCONN API接口是在RAW接口基礎上延申出來的一套API接口 NETCONN實現原理 2.1&#xff0c;NETCONN控制塊 2.2&#xff0c;NETCONN收…

Linux搜索

假如我們要搜索 struct sockaddr_in 我們在命令終端輸入 cd/usr/include/ //進入頭文件目錄地址 /usr/include/ grep " struct sockaddr_in { " *-nir &#xff08;*是在當前目錄&#xff0c;n 是找出來顯示行數…

2025長三角杯數學建模B題思路模型代碼:空氣源熱泵供暖的溫度預測,賽題分析與思路

2025長三角杯數學建模B題思路模型代碼&#xff0c;詳細內容見文末名片 空氣源熱泵是一種與中央空調類似的設備&#xff0c;其結構主要由壓縮主機、熱交換 器以及末端構成&#xff0c;依靠水泵對末端房屋提供熱量來實現制熱。空氣源熱泵作為熱 慣性負載&#xff0c;調節潛力巨…

ssh免密碼登錄

創建秘鑰和公鑰 ssh-keygen -t rsa 輸入上述命令后&#xff0c;直接按回車即可&#xff0c;完成后會在上面信息顯示&#xff0c;生成的文件路徑信息 id_rsa&#xff1a;秘鑰 id_rsa.pub&#xff1a; 公鑰 將公鑰的內容copy到遠端 將id_rsa.pub的內容拷貝到~/.ssh下的authori…

基于Bootstrap 的網頁html css 登錄頁制作成品

目錄 前言 一、網頁制作概述 二、登錄頁面 2.1 HTML內容 2.2 CSS樣式 三、技術說明書 四、頁面效果圖 前言 ?Bootstrap?是一個用于快速開發Web應用程序和網站的前端框架&#xff0c;由Twitter的設計師Mark Otto和Jacob Thornton合作開發。 它基于HTML、CSS和JavaScri…

20倍云臺球機是一種高性能的監控設備

20倍云臺球機是一種高性能的監控設備&#xff0c;其主要特點包括20倍光學變焦能力和云臺旋轉功能。以下是對20倍云臺球機的詳細分析&#xff1a; 一、主要特點 20倍光學變焦 &#xff1a; 攝像機鏡頭能夠在保持圖像清晰度的前提下&#xff0c;將監控目標放大20倍。 這一功能…

大型語言模型應用十大安全風險

40多頁LLM應用的十大風險 這是一份關于LLM應用的十大風險&#xff08;2025版&#xff09;&#xff0c;有一定的參考價值。 如果你時間充裕&#xff0c;可以聽聽播客&#xff0c;詳細了解&#xff1a; 如果你只想快速了解10條分別是什么&#xff0c;可以直接看重點摘錄&#xff…

一文掌握工業相機選型計算

目錄 一、基本概念 1.1 物方和像方 1.2 工作距離和視場 1.3 放大倍率 1.4 相機芯片尺寸 二、公式計算 三、實例應用 一、基本概念 1.1 物方和像方 在光學領域&#xff0c;物方&#xff08;Object Space&#xff09;是與像方&#xff08;Image Space&#xff09;相對的…

《虛擬即真實:數字人驅動技術在React Native社交中的涅槃》

當React Native與數字人驅動技術相遇&#xff0c;它們將如何攜手塑造社交應用中智能客服與虛擬主播的自然交互呢&#xff1f;這正是本文要深入探討的話題。 React Native是Facebook開源的一個用于構建原生移動應用的框架&#xff0c;它允許開發者使用JavaScript和React編寫代碼…

使用AI 生成PPT 最佳實踐方案對比

文章大綱 一、專業AI生成工具(推薦新手)**1. 推薦工具詳解****2. 操作流程優化****3. 優勢與局限**二、代碼生成方案(開發者推薦)**1. Python-pptx進階用法****2. GitHub推薦**三、混合工作流(平衡效率與定制)**1. 工具鏈升級****2. 示例Markdown結構**四、網頁轉換方案(…

前端-HTML元素

目錄 HTML標簽是什么&#xff1f; 什么是HTML元素&#xff1f; HTML元素有哪些分類方法&#xff1f; 什么是HTML頭部元素 更換路徑 注&#xff1a;本文以leetbook為基礎 HTML標簽是什么&#xff1f; HTML標簽是HTML語言中最基本單位和重要組成部分 雖然它不區分大小寫&a…

菱形繼承原理

在C中&#xff0c;菱形繼承的內存模型會因是否使用虛繼承產生本質差異。我們通過具體示例說明兩種場景的區別&#xff1a; 一、普通菱形繼承的內存模型 class A { int a; }; class B : public A { int b; }; class C : public A { int c; }; class D : public B, public C { i…

2025認證杯數學建模第二階段A題小行星軌跡預測思路+模型+代碼

2025認證杯數學建模第二階段思路模型代碼&#xff0c;詳細內容見文末名片 一、問題重述 1.1 問題背景 在浩瀚無垠的宇宙中&#xff0c;近地小行星&#xff08;NEAs&#xff09;宛如一顆顆神秘的“太空子彈”&#xff0c;其軌道相對接近地球&#xff0c;給我們的藍色星球帶來…

掌握Docker Commit:輕松創建自定義鏡像

使用 docker commit 命令可以通過對現有容器進行修改來創建新的鏡像。-a 選項用于指定作者信息&#xff0c;-m 選項用于添加提交信息。以下是具體步驟&#xff1a; 啟動并修改容器 啟動一個容器并進行必要的修改。例如&#xff0c;啟動一個 Ubuntu 容器并安裝一些軟件包&…