主頁 > 知識庫 > Golang 如何判斷數組某個元素是否存在 (isset)

Golang 如何判斷數組某個元素是否存在 (isset)

熱門標簽:外呼系統(tǒng)顯本地手機號 excel地圖標注分布數據 百度地圖標注后傳給手機 涿州代理外呼系統(tǒng) 電話機器人軟件免費 阿克蘇地圖標注 壽光微信地圖標注 評價高的400電話辦理 外呼系統(tǒng)用什么卡

如,現在需要判斷命令行是否傳了參數,即 os.Args[1] 是否存在

如果使用下述的判斷:

package main 
import (
 "fmt"
 "os"
)
 
func main() {
 if os.Args[1] != "" {
  fmt.Println("aaa")
 } else {
  fmt.Println("bbb")
 } 
}

會報錯:index out of range

panic: runtime error: index out of range
 
goroutine 1 [running]:
main.main()
 /root/workspace/go/testn.go:9 +0x100
exit status 2

正確處理方法:

通過遍歷的方式判斷 key = 1 是否存在

package main 
import (
 "fmt"
 "os"
)
 
func main() {
 var target string                             // 用來獲取最終需要的os.Args[1]
 for k, v := range(os.Args) {
  if k == 1 {                               // 假設需要獲取os.Args[k], k = 1
   target = v
  }
 } 
 
 if target != "" {                             // 不為空則表示os.Arg[1]存在
  fmt.Printf("os.Arg[1] = %s", target)     
 }
}

補充:golang中的正則匹配判斷元素是否在slice里或者數組里

1、正則匹配

package main 
import (
 "fmt"
 "regexp"
) 

func main() { 
    //pattern := "\\d+"     //反斜杠要轉義
 pattern := "[a-zA-Z]"   //匹配字母
 str := "a1.22.35.4"
 result, _ := regexp.MatchString(pattern, str)
 fmt.Println(result)   //true
}

2、判斷元素是否在slice里或者數組里

package main 
import "fmt" 
import "github.com/wxnacy/wgo/arrays" 
//go get github.com/wxnacy/wgo/arrays   安裝包 

func main() {
 str := "342"
 var numbers []string
 numbers = append(numbers, "3332", "342", "ssddd", "ssss", "%%%%") 
 index := arrays.ContainsString(numbers, str)
 if index == -1 {
  fmt.Printf("not exists") //-1說明不存在
 } else {
  fmt.Println(index) //存在則會返回元素的下標 
 }
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • Golang 空map和未初始化map的注意事項說明
  • golang 函數返回chan類型的操作
  • Go語言的Channel遍歷方法詳解
  • Golang 拷貝Array或Slice的操作
  • 基于Go Int轉string幾種方式性能測試
  • Go語言中break label與goto label的區(qū)別
  • Go 實現英尺和米的簡單單位換算方式

標簽:梅河口 重慶 蘭州 欽州 汕頭 雞西 銅川 吐魯番

巨人網絡通訊聲明:本文標題《Golang 如何判斷數組某個元素是否存在 (isset)》,本文關鍵詞  Golang,如何,判斷,數組,某個,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Golang 如何判斷數組某個元素是否存在 (isset)》相關的同類信息!
  • 本頁收集關于Golang 如何判斷數組某個元素是否存在 (isset)的相關信息資訊供網民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章