最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go語言每天必學之switch語句

 更新時間:2017年12月05日 09:15:25   投稿:lijiao  
這篇文章主要為大家詳細介紹了Go語言每天必學之switch語句的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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>

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

相關文章

  • 使用Go實現(xiàn)偽靜態(tài)URL重寫功能

    使用Go實現(xiàn)偽靜態(tài)URL重寫功能

    在Web開發(fā)中,偽靜態(tài)URL已成為優(yōu)化網(wǎng)站架構和提升SEO的常用技術手段,偽靜態(tài)URL是一種介于動態(tài)URL和靜態(tài)URL之間的解決方案,本文給大家介紹了如何使用Go實現(xiàn)偽靜態(tài)URL重寫功能,需要的朋友可以參考下
    2024-08-08
  • golang中結構體嵌套接口的實現(xiàn)

    golang中結構體嵌套接口的實現(xiàn)

    本文主要介紹了golang中結構體嵌套接口的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 淺析Go語言版本的forgery

    淺析Go語言版本的forgery

    使用過Python語言的朋友們可能使用過 forgery_py ,它是一個偽造數(shù)據(jù)的工具。這篇文章主要介紹了Go語言版本的forgery,需要的朋友可以參考下
    2018-08-08
  • Golang實現(xiàn)快速求冪的方法詳解

    Golang實現(xiàn)快速求冪的方法詳解

    這篇文章主要為大家詳細介紹了如何利用Golang實現(xiàn)快速求冪,文中的示例代碼講解詳細,對我們學習或工作有一定參考價值,需要的可以參考一下
    2022-06-06
  • go?pprof?的使用操作代碼

    go?pprof?的使用操作代碼

    pprof 是 go 中進行性能分析的工具,可以提供可視化數(shù)據(jù)查看,這篇文章主要介紹了go?pprof?的使用操作,需要的朋友可以參考下
    2022-09-09
  • Go編程庫Sync.Pool用法示例詳解

    Go編程庫Sync.Pool用法示例詳解

    這篇文章主要為大家介紹了Go編程庫Sync.Pool用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Go語言輸出函數(shù)使用詳解

    Go語言輸出函數(shù)使用詳解

    這篇文章主要介紹了Go語言輸出函數(shù)使用詳解的相關資料,需要的朋友可以參考下
    2023-08-08
  • golang實現(xiàn)圖像驗證碼的示例代碼

    golang實現(xiàn)圖像驗證碼的示例代碼

    這篇文章主要為大家詳細介紹了如何利用golang實現(xiàn)簡單的圖像驗證碼,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-10-10
  • 詳解golang的切片擴容機制

    詳解golang的切片擴容機制

    golang的切片擴容機制是golang面試者繞不開的一扇大門,無論在面試提問,或者面試情景上都繞不開它,今天就說說我理解下的切片擴容機制,感興趣的小伙伴跟著小編一起來看看吧
    2023-07-07
  • golang順時針打印矩陣的方法示例

    golang順時針打印矩陣的方法示例

    這篇文章主要介紹了golang順時針打印矩陣的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01

最新評論

沾益县| 东辽县| 左贡县| 金门县| 望城县| 乐至县| 荆门市| 延津县| 安乡县| 上饶县| 南澳县| 宜宾市| 北流市| 泾川县| 泸西县| 宁强县| 忻城县| 金山区| 迁安市| 长沙县| 山东| 平罗县| 昌宁县| 芦溪县| 建平县| 尖扎县| 怀集县| 穆棱市| 瓦房店市| 紫金县| 乡宁县| 黄梅县| 兴隆县| 衡阳市| 巴彦县| 金昌市| 封丘县| 昭觉县| 城固县| 曲周县| 梅河口市|