濮阳杆衣贸易有限公司

主頁 > 知識庫 > Go語言每天必學之switch語句

Go語言每天必學之switch語句

熱門標簽:釘釘有地圖標注功能嗎 浙江高頻外呼系統(tǒng)多少錢一個月 阿里云ai電話機器人 汕頭小型外呼系統(tǒng) 黃岡人工智能電銷機器人哪個好 惠州電銷防封電話卡 濱州自動電銷機器人排名 鄭州亮點科技用的什么外呼系統(tǒng) 建造者2地圖標注

Go 語言 switch 語句

switch 語句用于基于不同條件執(zhí)行不同動作,每一個 case 分支都是唯一的,從上直下逐一測試,直到匹配為止。。
switch 語句執(zhí)行的過程從上至下,直到找到匹配項,匹配項后面也不需要再加break

語法

Go 編程語言中 switch 語句的語法如下:

switch var1 {
  case val1:
    ...
  case val2:
    ...
  default:
    ...
}

變量 var1 可以是任何類型,而 val1 和 val2 則可以是同類型的任意值。類型不被局限于常量或整數(shù),但必須是相同的類型;或者最終結果為相同類型的表達式。

您可以同時測試多個可能符合條件的值,使用逗號分割它們,例如:case val1, val2, val3。

流程圖:

實例

package main

import "fmt"

func main() {
  /* 定義局部變量 */
  var grade string = "B"
  var marks int = 90

  switch marks {
   case 90: grade = "A"
   case 80: grade = "B"
   case 50,60,70 : grade = "C"
   default: grade = "D" 
  }

  switch {
   case grade == "A" :
     fmt.Printf("優(yōu)秀!\n" )   
   case grade == "B", grade == "C" :
     fmt.Printf("良好\n" )   
   case grade == "D" :
     fmt.Printf("及格\n" )   
   case grade == "F":
     fmt.Printf("不及格\n" )
   default:
     fmt.Printf("差\n" );
  }
  fmt.Printf("你的等級是 %s\n", grade );   
}

以上代碼執(zhí)行結果為:

優(yōu)秀!
你的等級是 A

Type Switch

switch 語句還可以被用于 type-switch 來判斷某個 interface 變量中實際存儲的變量類型。
Type Switch 語法格式如下:

switch x.(type){
  case type:
    statement(s);   
  case type:
    statement(s); 
  /* 你可以定義任意個數(shù)的case */
  default: /* 可選 */
    statement(s);
}

實例

package main

import "fmt"

func main() {
  var x interface{}
   
  switch i := x.(type) {
   case nil:   
     fmt.Printf(" x 的類型 :%T",i)        
   case int:   
     fmt.Printf("x 是 int 型")            
   case float64:
     fmt.Printf("x 是 float64 型")      
   case func(int) float64:
     fmt.Printf("x 是 func(int) 型")           
   case bool, string:
     fmt.Printf("x 是 bool 或 string 型" )    
   default:
     fmt.Printf("未知型")   
  }  
}

以上代碼執(zhí)行結果為:

x 的類型 :nil>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Go語言中的if條件語句使用詳解
  • golang switch語句的靈活寫法介紹
  • Golang中switch語句和select語句的用法教程
  • 深入剖析Go語言編程中switch語句的使用
  • Go語言中的switch用法實例分析
  • Go中的條件語句Switch示例詳解

標簽:駐馬店 泰安 阿壩 瀘州 滄州 晉中 東營 昭通

巨人網(wǎng)絡通訊聲明:本文標題《Go語言每天必學之switch語句》,本文關鍵詞  語言,每天,必,學之,switch,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Go語言每天必學之switch語句》相關的同類信息!
  • 本頁收集關于Go語言每天必學之switch語句的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    安龙县| 上林县| 松江区| 绥江县| 吉木萨尔县| 东丰县| 静海县| 河东区| 房山区| 丁青县| 宜昌市| 沁源县| 敖汉旗| 大理市| 香河县| 临朐县| 札达县| 太湖县| 蓬安县| 繁昌县| 乃东县| 吉木萨尔县| 长垣县| 德阳市| 邢台县| 久治县| 苍梧县| 蓬莱市| 绍兴县| 宝清县| 盘锦市| 梁河县| 曲阜市| 杭锦旗| 临湘市| 枣强县| 枣阳市| 阿克陶县| 岱山县| 怀化市| 大埔县|