Go語(yǔ)言中的if條件語(yǔ)句使用詳解
if語(yǔ)句
if語(yǔ)句包含一個(gè)布爾表達(dá)式后跟一個(gè)或多個(gè)語(yǔ)句。
語(yǔ)法
if語(yǔ)句在Go編程語(yǔ)言的語(yǔ)法是:
if(boolean_expression)
{
/* statement(s) will execute if the boolean expression is true */
}
如果布爾表達(dá)式的值為 true,那么if語(yǔ)句里面代碼塊將被執(zhí)行。如果if語(yǔ)句的結(jié)束(右大括號(hào)后)布爾表達(dá)式的值為false,那么語(yǔ)句之后第一行代碼會(huì)被執(zhí)行。
流程圖:
例子:
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 10
/* check the boolean condition using if statement */
if( a < 20 ) {
/* if condition is true then print the following */
fmt.Printf("a is less than 20\n" )
}
fmt.Printf("value of a is : %d\n", a)
}
讓我們編譯和運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:
a is less than 20; value of a is : 10
if...else語(yǔ)句
if語(yǔ)句可以跟著一個(gè)可選的else語(yǔ)句,布爾表達(dá)式是假時(shí)它被執(zhí)行。
語(yǔ)法
在Go編程語(yǔ)言中的if ... else語(yǔ)句的語(yǔ)法是:
if(boolean_expression)
{
/* statement(s) will execute if the boolean expression is true */
}
else
{
/* statement(s) will execute if the boolean expression is false */
}
如果布爾表達(dá)式的值為true,那么if代碼塊將被執(zhí)行,否則else代碼塊將被執(zhí)行。
流程圖:
例子:
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 100;
/* check the boolean condition */
if( a < 20 ) {
/* if condition is true then print the following */
fmt.Printf("a is less than 20\n" );
} else {
/* if condition is false then print the following */
fmt.Printf("a is not less than 20\n" );
}
fmt.Printf("value of a is : %d\n", a);
}
當(dāng)上述代碼被編譯和執(zhí)行時(shí),它產(chǎn)生了以下結(jié)果:
a is not less than 20; value of a is : 100
if...else if...else 語(yǔ)句
if語(yǔ)句可以跟著一個(gè)可選的else if ... else語(yǔ)句,這是非常有用的使用單個(gè) if...else if 語(yǔ)句聲明測(cè)試各種條件。
當(dāng)使用if , else if , else語(yǔ)句有幾點(diǎn)要記住使用:
if可以有零或一個(gè)else,它必須跟從else if后面。
一個(gè)if可以有零到個(gè)多else if并且它們必須在else之前。
一旦一個(gè)else if測(cè)試成功,其它任何剩余else if將不會(huì)被測(cè)試。
語(yǔ)法
if...else if...else在Go編程語(yǔ)言中語(yǔ)句的語(yǔ)法是:
if(boolean_expression 1)
{
/* Executes when the boolean expression 1 is true */
}
else if( boolean_expression 2)
{
/* Executes when the boolean expression 2 is true */
}
else if( boolean_expression 3)
{
/* Executes when the boolean expression 3 is true */
}
else
{
/* executes when the none of the above condition is true */
}
例子:
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 100
/* check the boolean condition */
if( a == 10 ) {
/* if condition is true then print the following */
fmt.Printf("Value of a is 10\n" )
} else if( a == 20 ) {
/* if else if condition is true */
fmt.Printf("Value of a is 20\n" )
} else if( a == 30 ) {
/* if else if condition is true */
fmt.Printf("Value of a is 30\n" )
} else {
/* if none of the conditions is true */
fmt.Printf("None of the values is matching\n" )
}
fmt.Printf("Exact value of a is: %d\n", a )
}
讓我們編譯和運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:
None of the values is matching Exact value of a is: 100
相關(guān)文章
Golang實(shí)現(xiàn)CronJob(定時(shí)任務(wù))的方法詳解
這篇文章主要為大家詳細(xì)介紹了Golang如何通過一個(gè)單 pod 去實(shí)現(xiàn)一個(gè)常駐服務(wù),去跑定時(shí)任務(wù)(CronJob),文中的示例代碼講解詳細(xì),需要的可以參考下2023-04-04golang中定時(shí)器cpu使用率高的現(xiàn)象詳析
這篇文章主要給大家介紹了關(guān)于golang中定時(shí)器cpu使用率高的現(xiàn)象的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04解析GOROOT、GOPATH、Go-Modules-三者的關(guān)系
這篇文章主要介紹了解析GOROOT、GOPATH、Go-Modules-三者的關(guān)系,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10GO將mysql?中?decimal?數(shù)據(jù)類型映射到?protobuf的操作方法
這篇文章主要介紹了go如何優(yōu)雅地將?mysql?中?decimal?數(shù)據(jù)類型映射到?protobuf,本文主要展示一下在 protobuf中 float與double的一個(gè)區(qū)別,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09golang int 轉(zhuǎn)float 強(qiáng)轉(zhuǎn)和高精度轉(zhuǎn)操作
這篇文章主要介紹了golang int 轉(zhuǎn)float 強(qiáng)轉(zhuǎn)和高精度轉(zhuǎn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-12-12