go語言中if語句用法實(shí)例
本文實(shí)例講述了go語言中if語句用法。分享給大家供大家參考。具體分析如下:
if 語句看起來跟 C 或者 Java 中的一樣,除了沒有了 ( ) 之外(甚至強(qiáng)制不能使用它們),而 { } 是必須的。
import (
"fmt"
"math"
)
func sqrt(x float64) string {
if x < 0 {
return sqrt(-x) + "i"
}
return fmt.Sprint(math.Sqrt(x))
}
func main() {
fmt.Println(sqrt(2), sqrt(-4))
}
跟 for 一樣,if 語句可以在條件之前執(zhí)行一個(gè)簡單的語句。
由這個(gè)語句定義的變量的作用域僅在 if 范圍之內(nèi)。
(在最后的 return 語句處使用 v 看看。)
import (
"fmt"
"math"
)
func pow(x, n, lim float64) float64 {
if v := math.Pow(x, n); v < lim {
return v
}
return lim
}
func main() {
fmt.Println(
pow(3, 2, 10),
pow(3, 3, 20),
)
}
在 if 的簡單語句處定義的變量同樣可以在任何對應(yīng)的 else 塊中使用。
import (
"fmt"
"math"
)
func pow(x, n, lim float64) float64 {
if v := math.Pow(x, n); v < lim {
return v
} else {
fmt.Printf("%g >= %g\n", v, lim)
}
// 不能在這里使用 v,因此
return lim
}
func main() {
fmt.Println(
pow(3, 2, 10),
pow(3, 3, 20),
)
}
希望本文所述對大家的Go語言程序設(shè)計(jì)有所幫助。
相關(guān)文章
go實(shí)現(xiàn)自動(dòng)復(fù)制U盤小工具demo
這篇文章主要為大家介紹了go實(shí)現(xiàn)自動(dòng)復(fù)制U盤小工具demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
詳解如何利用GORM實(shí)現(xiàn)MySQL事務(wù)
為了確保數(shù)據(jù)一致性,在項(xiàng)目中會(huì)經(jīng)常用到事務(wù)處理,對于MySQL事務(wù)相信大家應(yīng)該都不陌生。這篇文章主要總結(jié)一下在Go語言中Gorm是如何實(shí)現(xiàn)事務(wù)的;感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助2022-09-09
Go中time.RFC3339 時(shí)間格式化的實(shí)現(xiàn)
這篇文章主要介紹了Go中time.RFC3339 時(shí)間格式化的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
go打包aar及flutter調(diào)用aar流程詳解
這篇文章主要為大家介紹了go打包aar及flutter調(diào)用aar流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Go結(jié)合Gin導(dǎo)出Mysql數(shù)據(jù)到Excel表格
本文主要介紹了Go結(jié)合Gin導(dǎo)出Mysql數(shù)據(jù)到Excel表格,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
深入了解Golang?interface{}的底層原理實(shí)現(xiàn)
在?Go?語言沒有泛型之前,接口可以作為一種替代實(shí)現(xiàn),也就是萬物皆為的?interface。那到底?interface?是怎么設(shè)計(jì)的底層結(jié)構(gòu)呢?下面咱們透過底層分別看一下這兩種類型的接口原理。感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助2022-10-10

