Go 語言中switch case條件分支語句

1. 基本語法

package main
import "fmt"
func main() {var extname = ".css"switch extname {case ".html":fmt.Println("text/html")case ".css":fmt.Println("text/css") // text/csscase ".js":fmt.Println("text/javaScript")default:fmt.Println("找不到此后綴")}
}

2. 條件前可以寫表達式

package main
import "fmt"
func main() {switch extname := ".html"; extname {case ".html":fmt.Println("text/html") // text/htmlcase ".css":fmt.Println("text/css")case ".js":fmt.Println("text/javascript")default:fmt.Println("找不到此后綴")}// 注意 extname 只能在switch語句中訪問fmt.Println(extname) //undefined: extname
}

3. 一個分支可以有多個值

package main
import "fmt"
func main() {var score = "D" switch score {case "A", "B", "C":fmt.Println("及格")case "D":fmt.Println("不及格") // 不及格}
}

4. 分支可以寫表達式

package main
import "fmt"
func main() {var age = 18switch {case age < 24:fmt.Println("好好學習") // 好好學習case age >= 24 && age <= 60:fmt.Println("好好賺錢")case age > 60:fmt.Println("注意身體")default:fmt.Println("輸入錯誤")}
}

5. 條件穿透語句

在C語言中 switch 語句中必須添加 break,否則會進行條件穿透,而在Go 語言中的 switch 語句中不用添加 break,也不會產生條件穿透,但是如果需要條件穿透時可以加上?fallthrough。

package main
import "fmt"
func main() {var age = 30switch {case age < 24:fmt.Println("好好學習")case age >= 24 && age <= 60:fmt.Println("好好賺錢") // 好好賺錢fallthroughcase age > 60:fmt.Println("注意身體") // 注意身體default:fmt.Println("輸入錯誤")}
}

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

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

相關文章

FFmpeg:Windows系統小白安裝及其使用

一、安裝 1.訪問官網 Download FFmpeg 2.點擊版本目錄 3.選擇版本點擊安裝 注意這里選擇的是【release buids】&#xff0c;注意左上角標題 例如我安裝在目錄 F:\FFmpeg 4.解壓 5.添加環境變量 把你解壓后的bin目錄&#xff08;即exe所在文件夾&#xff09;加入系統變量…

LLM基礎2_語言模型如何文本編碼

基于GitHub項目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 字節對編碼(BPE) 上一篇博文說到 為什么GPT模型不需要[PAD]和[UNK]&#xff1f; GPT使用更先進的字節對編碼(BPE)&#xff0c;總能將詞語拆分成已知子詞 為什么需要BPE&#xff1f; 簡…

監控升級:可視化如何讓每一個細節 “說話”

你有沒有遇到過這樣的情況&#xff1f; 監控畫面里明明有“異常”&#xff0c;但值班人員愣是沒發現&#xff1b; 報警響起卻不知道具體發生了什么&#xff0c;只能靠猜、靠翻錄像&#xff1b; 出了事回看錄像&#xff0c;才發現線索早就在眼前&#xff0c;只是沒人注意到………

單片機bootloader(APP的自我復制)

文章目錄 Bootloader 中 APP 的自我復制與啟動機制解析一、為什么要進行自我復制?二、程序整體結構概述三、匯編啟動代碼分析重點解釋:四、C 語言部分分析核心功能:五、start\_app 函數:手動啟動指定 APP六、總結七、適用場景Bootloader 中 APP 的自我復制與啟動機制解析 …

瀏覽器工作原理11 [#] this:從JavaScript執行上下文視角講this

引用 《瀏覽器工作原理與實踐》 在上篇文章中&#xff0c;我們講了詞法作用域、作用域鏈以及閉包&#xff0c;并在最后思考題中留了下面這樣一段代碼 var bar {myName:"time.geekbang.com",printName: function () {console.log(myName)} } function foo() {le…

【C語言】-遞歸

1、遞歸概念 遞歸&#xff08;Recursion&#xff09;是編程中一種重要的解決問題的方法&#xff0c;其核心思想是函數通過調用自身來解決規模更小的子問題&#xff0c;直到達到最小的、可以直接解決的基準情形&#xff08;Base Case&#xff09;。 核心&#xff1a;自己調用…

12.5Swing控件3Jpanel JOptionPane

JPanel JPanel是一個輕量級容器組件&#xff0c;用于組織和管理其他 GUI 組件。它繼承自JComponent類&#xff0c;屬于javax.swing包&#xff0c;可以容納按鈕、文本框、標簽等控件 JPanel 默認使用的布局管理器是 FlowLayout&#xff0c;也可以嵌套其他面板&#xff0c;以便…

MIPI信號為什么不能進行長距離傳輸

1.關于MIPI信號傳輸 MIPI信號是不適合長距離傳輸的。 2.MIPI的信號擺幅小&#xff0c;抗干擾能力比較弱 MIPI信號的差分擺幅比較小&#xff0c;通常只有100mV~200mV,遠遠低于LVDS的350mV的擺幅 小擺幅信號在長線纜上傳輸的時候更容易被噪聲淹沒&#xff0c;信噪比下降&#xf…

Qt的學習(二)

1. 創建Hello Word 兩種方式&#xff0c;實現helloworld&#xff1a; 1.通過圖形化的方式&#xff0c;在界面上創建出一個控件&#xff0c;顯示helloworld 2.通過純代碼的方式&#xff0c;通過編寫代碼&#xff0c;在界面上創建控件&#xff0c; 顯示hello world&#xff1b; …

Windows11+VS2019配置Libigl-2.4.1

Windows11VS2019配置Libigl-2.4.1 由于課題需要&#xff0c;所以出一篇配置Libigl的博客&#xff0c;制作不易&#xff0c;請多多點贊 一、官網下載 官網&#xff1a;https://libigl.github.io/ GitHub下載地址&#xff1a;https://github.com/libigl/libigl 這里我們選擇…

地球科學方向(Geoscience and Remote Sensing),1天見刊,當月可檢索!

CSP科學出版社&#xff0c;旨在通過為研究人員提供最佳環境來發表、參考、閱讀和引用他們的作品&#xff0c;從而為科學界服務。現已與科檢易學術達成出版戰略合作&#xff0c;現在聯合共同出版高質量學術水平的期刊&#xff0c;為方便廣大科研學者投稿方便&#xff0c;現已經建…

基于 Three.js 的 3D 模型快照生成方案

基于 Three.js 的 3D 模型快照生成方案 此方案通過 Three.js 渲染場景并異步生成圖像數據&#xff0c;同時支持分辨率縮放和 Blob 格式輸出&#xff0c;為模型預覽、截圖保存等需求提供完整解決方案。 問題分析&#xff1a; 使用html2canvas 生成的快照畫布顯示為空&#xff…

「Java基本語法」變量的使用

變量定義 變量是程序中存儲數據的容器&#xff0c;用于保存可變的數據值。在Java中&#xff0c;變量必須先聲明后使用&#xff0c;聲明時需指定變量的數據類型和變量名。 語法 數據類型 變量名 [ 初始值]; 示例&#xff1a;聲明與初始化 public class VariableDemo {publi…

SpringCloud學習筆記-2

說明&#xff1a;來源于網絡&#xff0c;如有侵權請聯系我刪除 1.提問&#xff1a;如果注冊中心宕機&#xff0c;遠程調用還能成功嗎 答&#xff1a;當微服務發起請求時&#xff0c;會向注冊中心請求所有的微服務地址&#xff0c;然后在向指定的微服務地址發起請求。在設計實…

Hac - NBh標準JSON協議使用說明文檔

Hac - NBh 標準 JSON 協議使用說明文檔 一、協議概述 Hac - NBh 標準 JSON 協議是專為物聯網設備與服務器數據交互設計的通信協議。以 JSON 格式為基礎,采用鍵值對(KV 值)組織數據,支持靈活選取數據項,通過 CBOR 格式實現高效傳輸,并利用 AES 128 加密保障數據安全。 …

k8s從入門到放棄之Service負載均衡

k8s從入門到放棄之Service負載均衡 在 Kubernetes (K8s) 中&#xff0c;Service 是一種抽象&#xff0c;它定義了一組邏輯上的 Pod 和訪問它們的策略。Service 的主要目的是提供一種可靠的方式來訪問一組具有相同標簽&#xff08;Label&#xff09;的 Pod&#xff0c;即使這些…

【題解-洛谷】P10480 可達性統計

題目&#xff1a;P10480 可達性統計 題目描述 給定一張 N N N 個點 M M M 條邊的有向無環圖&#xff0c;分別統計從每個點出發能夠到達的點的數量。 輸入格式 第一行兩個整數 N , M N,M N,M&#xff0c;接下來 M M M 行每行兩個整數 x , y x,y x,y&#xff0c;表示從 …

SpringCloud2025+SpringBoot3.5.0+gateway+webflux子服務路由報503

文章目錄 前言一、問題二、原因1.分析2.配置靜態路由再試3.定位 總結 前言 本來昨天就應該也記錄下&#xff0c;免得忘記的&#xff0c;但是有點晚了&#xff0c;酒沒寫&#xff0c;真的是被坑慘了。 當然這也是追求最新的代價&#xff0c;也是對新技術、老知識點的重溫…

破解路內監管盲區:免布線低位視頻樁重塑停車管理新標準

城市路內停車管理常因行道樹遮擋、高位設備盲區等問題&#xff0c;導致車牌識別率低、逃費率高&#xff0c;傳統模式在復雜路段束手無策。免布線低位視頻樁憑借超低視角部署與智能算法&#xff0c;正成為破局關鍵。該設備安裝于車位側方0.5-0.7米高度&#xff0c;直接規避樹枝遮…

RAG 文檔解析難點1:多欄布局的 PDF 如何解析

寫在前面 在構建檢索增強生成 (Retrieval-Augmented Generation, RAG) 應用時,高質量的數據源是成功的基石。PDF 作為一種廣泛使用的文檔格式,承載著海量的知識。然而,許多 PDF 文檔,特別是學術論文、期刊、雜志和一些報告,都采用了多欄布局 (multi-column layout)。 直…