第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在golang中返回一個空值?

如何在golang中返回一個空值?

Go
溫溫醬 2022-05-05 18:08:09
我需要為 golang 中的函數(shù)返回一個空值,我的代碼看起來像這樣。package mainimport (    "fmt")func main(){    for i:=0;i<6;i++{        x,e := test(i)        fmt.Println(i,x,e)    }}func test(i int)(r int,err error){    if i%2==0{        return i,nil    }else{        return     }}及其輸出0 0 <nil>1 0 <nil>2 2 <nil>3 0 <nil>4 4 <nil>5 0 <nil>而我想要這種類型的輸出0 0 <nil>1 <nil> <nil>2 2 <nil>3 <nil> <nil>4 4 <nil>5 <nil> <nil>如何在golang中返回空值?
查看完整描述

1 回答

?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗 獲得超11個贊

“空值”是一個約定俗成的問題。您必須定義空值的含義。

  • 許多標(biāo)準(zhǔn)庫函數(shù)返回一個無效值來表示空。例如,strings.Index返回 -1,因為所有有效值都 >=0

  • 返回指針的函數(shù)通常返回nil

  • 有些函數(shù)返回成對的值,一個值和一個表示有效性。地圖和頻道也使用此約定:

value, exists:=someMap[key]

以上,如果exists為真,則value具有有效值。如果existsfalse,value則無效(空)。

  • 許多函數(shù)返回一個值和錯誤。如果 error 不為零,則該值無意義。

因此,在您的代碼中,您可以執(zhí)行以下操作:

func test(i int)(r int,valid bool){

    if i%2==0{

        return i,true

    }else{

        return 0,false

    }

}

或者,如果您有錯誤情況,請從您的函數(shù)中返回一個非零錯誤,并檢查您調(diào)用它的位置是否有錯誤。如果出現(xiàn)錯誤,則返回的值都是“空”。


查看完整回答
反對 回復(fù) 2022-05-05
  • 1 回答
  • 0 關(guān)注
  • 452 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號