iT邦幫忙

2023 iThome 鐵人賽

DAY 1
0
自我挑戰組

Go語言自學挑戰系列 第 7

第七天:流程控制(1):if 判斷

  • 分享至 

  • xImage
  •  

if介紹

今天來介紹Golang中流程控制的if陳述式

它最主用的用途是進行條件判斷,

只要條件成立就執行if內部的程式,

if的概念相當簡單語法如下:

if 條件 {
  //  判斷=true則執行裡面的程式
}

程式範例:

package main
import ("fmt")

func main() {
  var txt string = "GMI"
  
  if txt ==  "GMI"{
  
  	fmt.Println("HI~~", txt)
    
  }
}

執行結果:

HI~~ GMI

if-else 陳述式

假設判斷結果=false又需要執行一段程式,

可以使用if-else 陳述式,語法如下:

if 條件 {
  //  判斷=true則執行裡面的程式
}else{
  //  判斷=false則執行裡面的程式
}

程式範例:

package main
import ("fmt")

func main() {
  var txt string = "GMIO"
  
  if txt ==  "GMI"{
  	fmt.Println("HI~~", txt)
  }else{
  	fmt.Println("你是誰!?")
  }
}

執行結果:

你是誰!?

if else if 陳述式

如果有更多的條件需要判斷,

則可以使用if else if 陳述式,語法如下:

if 條件1 {
  //  判斷=true則執行裡面的程式
}else if 條件2{
  //  判斷=true則執行裡面的程式
}else{
  //  判斷=false則執行裡面的程式
}

程式範例:

package main
import ("fmt")

func main() {
  var txt string = "GMIO"
  
  if txt ==  "GMI"{
  	fmt.Println("HI~~", txt)
  }else if txt == "GMIO" {
  	fmt.Println("原來是",txt," ,我以為你是GMI~")
  }else{
  	fmt.Println("你是誰!?")
  }
}

執行結果:

原來是 GMIO  ,我以為你是GMI~

if巢狀結構

真實的程式開發其實相當複雜,除了一條龍接續判斷之外,

也會出現巢狀結構的設計,一層層的判斷語法如下:

if 條件1 {
  //  判斷=true則執行裡面的程式
  if 條件2 {
  //  判斷=true則執行裡面的程式
}

程式範例:

package main
import ("fmt")

func main() {
  var txt string = "GMI"
  var age int = 70
  
  if txt ==  "GMI"{
  	fmt.Println("HI~~", txt)
  	if age > 50 {
    	fmt.Println("你看起來真年輕!")
    }else{
    	fmt.Println("你看起來真帥")
    }
  }else{
  	fmt.Println("你是誰!?")
  }
}

執行結果:

HI~~ GMI
你看起來真年輕!

參考資料

  1. https://www.w3schools.com/go/go_conditions.php

上一篇
第六天:Golang的運算符Operator介紹
下一篇
第八天:流程控制(2) Switch陳述式
系列文
Go語言自學挑戰29
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言