婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > go結構體嵌套的切片數組操作

go結構體嵌套的切片數組操作

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

看代碼吧~

package main
import (
 "fmt"
)
type XCDataStu struct {
 Id   int    `json:"id"   xorm:"id"`
 Name string `json:"name"  xorm:"name"`
}
type XCDataStu1 struct {
 Id             int    `json:"id" xorm:"id"`
 Str1           string `json:"str1" xorm:"str1"`
 Db1            string `json:"db1" xorm:"db1"`
 Device_type    string `json:"Device_type" xorm:"Device_type"`
 DeviceTypeName string `json:"DeviceTypeName"`
}
type XCDataStuAll struct {//結構體嵌套
 XCDataStuinall  XCDataStu
 XCDataStu1inall XCDataStu1
}
func main() {
/*1*/
 xcData := []XCDataStu{
  XCDataStu{Id: 758, Name: "David758"},
  XCDataStu{Id: 759, Name: "David759"},
 }
/*2*/
 xcdataall := make([]XCDataStuAll, len(xcData))
 /*xcdataall[0]={ XCDataStu{Id: 758, Name: "David758"},
 XCDataStu1{Id: 0, Str1: "dsa", Db1: "dsa",
  Device_type: "fhls", DeviceTypeName: "dasf"}}*/
 fmt.Println(len(xcData))
 fmt.Println(xcData[0])
 fmt.Println(xcData[1])
 i := 0
 for ; i  2; i++ {
  xcdataall[i].XCDataStuinall.Id = xcData[i].Id
  xcdataall[i].XCDataStuinall.Name = xcData[i].Name
 }
 fmt.Println(xcdataall)
}

結構體切片:

可以直接聲明時初始化,如程序中的1

可以用make,但是必須給定長度,否則不能使用下標進行賦值。

如程序中的2

 var xcdataall []XCDataStuAll
 for ; i  2; i++ {
  xcdataall[i].XCDataStuinall.Id = xcData[i].Id
  xcdataall[i].XCDataStuinall.Name = xcData[i].Name
 }

程序編譯沒錯,但是最后運行后會出現panic。。。

panic: runtime error: index out of range

補充:go遍歷結構體(struct)字段對應的值,切片(slice),字典(map)

一、遍歷結構體字段:

eg1:

package main
import (
    "fmt"
    "reflect"
)
type person struct {
    name string
    age  int
}
func main() {
    v := reflect.ValueOf(person{"steve", 30})
    count := v.NumField()
    for i := 0; i  count; i++ {
        f := v.Field(i)
        switch f.Kind() {
        case reflect.String:
            fmt.Println(f.String())
        case reflect.Int:
            fmt.Println(f.Int())
        }
    }
}

輸出結果:

steve

30

eg2:

package main
import (
    "fmt"
    "reflect"
)
type NotknownType struct {
    s1, s2, s3 string
}
var secret interface{} = NotknownType{"Ada", "Go", "Oberon"}
func main() {
    value := reflect.ValueOf(secret)
    for i := 0; i  value.NumField(); i++ {
        fmt.Printf("Field %d: %v\n", i, value.Field(i))
    }
}

輸出結果:

Field 0: Ada

Field 1: Go

Field 2: Oberon

二、遍歷切片:

for range 結構

package main
import (
    "fmt"
)
func main(){
    slice := []string{"hello","world","hello","everyone!"}
    for k,val:=range slice{
        fmt.Printf("slice %d is :%s\n",k,val )
    }
}

輸出結果:

slice 0 is :hello

slice 1 is :world

slice 2 is :hello

slice 3 is :everyone!

三、遍歷map:

package main
import (
    "fmt"
)
func main() {
    m := make(map[string]string)
    m["1"] = "hello"
    m["2"] = "world"
    m["3"] = "go"
    m["4"] = "is"
    m["5"] = "cool"
    fmt.Printf("The corresponding relationship between key and value is:\n")
    for key, val := range m {
        fmt.Printf("%v===>%v\n", key, val)
    }
}

輸出結果:

The corresponding relationship between key and value is:

1===>hello

2===>world

3===>go

4===>is

5===>cool

但是還有一個問題,上面的程序不做改動運行第二次,結果順序就會改變,因為map遍歷出來結果是無序的,這不好控制,也不利于業務邏輯;當業務依賴key次序時,需要引入“sort”包來解決隨機化問題

代碼如下:

package main
import (
    "fmt"
    "sort"
)
func main() {
    m := make(map[string]string)
    m["1"] = "hello"
    m["2"] = "world"
    m["3"] = "go"
    m["4"] = "is"
    m["5"] = "cool"
    sorted_keys := make([]string, 0)
    for k, _ := range m {
        sorted_keys = append(sorted_keys, k)
    }
    sort.Strings(sorted_keys)
    for _, k := range sorted_keys {
        fmt.Printf("%v=====>%v\n", k, m[k])
    }
}

輸出結果是:

1=====>hello

2=====>world

3=====>go

4=====>is

5=====>cool

注意:

輸出的結果運行多次不會改變順序。

但是key的先后順序是按照字母或者數字排列的。

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

您可能感興趣的文章:
  • GO語言數組和切片實例詳解
  • 理解Golang中的數組(array)、切片(slice)和map
  • 深入理解Go語言中的數組和切片
  • golang將切片或數組根據某個字段進行分組操作
  • go特性之數組與切片的問題
  • 簡單聊一聊Go語言中的數組和切片

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

巨人網絡通訊聲明:本文標題《go結構體嵌套的切片數組操作》,本文關鍵詞  結構,體,嵌套,的,切片,數組,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《go結構體嵌套的切片數組操作》相關的同類信息!
  • 本頁收集關于go結構體嵌套的切片數組操作的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    99久久久精品免费观看国产蜜| 久久国产乱子精品免费女| 欧美精品一区二区三区在线| 国产成人精品一区二区三区四区 | 国产99久久久国产精品潘金| 成人免费一区二区三区视频| 一本高清dvd不卡在线观看| 午夜精品视频一区| 亚洲桃色在线一区| 日韩欧美一级二级三级久久久| 高清免费成人av| 久久99精品久久久久久动态图 | 亚洲国产精品久久人人爱蜜臀 | 国产精品女同互慰在线看| 粉嫩aⅴ一区二区三区四区五区 | 一区精品在线播放| 91在线视频在线| 亚洲欧洲精品一区二区精品久久久 | 欧美国产一区二区| av电影在线观看一区| 欧美bbbbb| 亚洲国产日韩一区二区| 亚洲欧美另类综合偷拍| 中文字幕欧美日本乱码一线二线 | 亚洲精品国产a久久久久久| 国产精品久久久久天堂| 欧美色综合天天久久综合精品| 成人黄色综合网站| 国产91丝袜在线18| 亚洲国产精品一区二区www在线| 亚洲一级电影视频| 一区二区三区日韩精品| 亚洲一区二区三区视频在线播放 | 中文字幕亚洲一区二区av在线| 成人欧美一区二区三区小说| 亚洲色图在线看| 成人免费一区二区三区在线观看| 亚洲欧美日韩人成在线播放| 国产精品久久久久久福利一牛影视| 9191成人精品久久| 久久精品在这里| 久久久天堂av| 1区2区3区国产精品| 亚洲午夜视频在线观看| 中文字幕在线不卡一区二区三区| 伊人开心综合网| 久久精品国内一区二区三区| 成人亚洲一区二区一| 国产一区啦啦啦在线观看| 99国产精品久| 欧美日韩视频在线观看一区二区三区| 欧美日本一区二区| 欧美日韩电影在线| 精品国产乱码久久久久久免费 | 色偷偷久久人人79超碰人人澡| 欧美老人xxxx18| 国产日韩一级二级三级| 亚洲一二三四久久| 一区二区久久久久久| 日韩毛片精品高清免费| 欧美aaa在线| 激情综合色综合久久| 色噜噜久久综合| 在线观看网站黄不卡| 久久久久成人黄色影片| 亚洲国产综合色| av亚洲精华国产精华| 日韩一区二区麻豆国产| 日韩你懂的在线播放| 亚洲欧洲性图库| 国产精品亚洲午夜一区二区三区| 日本韩国一区二区三区| 欧美视频日韩视频| 中文字幕二三区不卡| 欧美午夜精品久久久| av在线播放不卡| 国产视频视频一区| 久久99久久久久久久久久久| 欧美日韩国产首页| 亚洲一区二区视频| 99久久99久久综合| 久久久亚洲精华液精华液精华液 | 美女mm1313爽爽久久久蜜臀| 成人精品一区二区三区中文字幕| 91伊人久久大香线蕉| 国产亚洲精久久久久久| 国模娜娜一区二区三区| 欧美色图第一页| 综合色中文字幕| 成人激情视频网站| 国产传媒欧美日韩成人| 精品乱人伦小说| 美国十次了思思久久精品导航| 成人午夜伦理影院| 国产拍欧美日韩视频二区| 国精产品一区一区三区mba视频 | 免费成人小视频| 91美女精品福利| 久久综合久久鬼色中文字| 美女视频一区二区| 久久女同精品一区二区| 国产精品夜夜嗨| 久久久精品欧美丰满| 视频在线观看91| 555www色欧美视频| 久久精品国内一区二区三区| 26uuu另类欧美| 欧美mv日韩mv亚洲| 日韩欧美的一区二区| 亚洲男帅同性gay1069| 丁香亚洲综合激情啪啪综合| 日韩欧美一二三区| 日本人妖一区二区| 91丨porny丨户外露出| 精品成人一区二区三区| 韩国欧美国产1区| 国产日产精品1区| 美女网站一区二区| 日本一区二区三区电影| va亚洲va日韩不卡在线观看| 国产精品不卡在线| 在线免费观看视频一区| 日本伊人精品一区二区三区观看方式| 成人黄色综合网站| 丝袜美腿亚洲色图| 国产天堂亚洲国产碰碰| 一本一道久久a久久精品综合蜜臀| 国产亚洲va综合人人澡精品| 国产精品18久久久| 欧美精品一区在线观看| 99国产精品一区| 亚洲国产cao| 欧美日韩免费高清一区色橹橹| 亚洲福利视频三区| 欧美一区二区播放| 日产国产欧美视频一区精品| 日韩欧美二区三区| 成人在线视频一区| 亚洲香肠在线观看| 中文字幕一区二区视频| 91成人免费在线视频| 国产专区综合网| 国产精品高潮呻吟久久| 欧美日本韩国一区| 97精品国产露脸对白| 精品亚洲国产成人av制服丝袜| 亚洲免费观看高清| 日本一区二区综合亚洲| 欧美日韩卡一卡二| 亚洲激情图片一区| 久久久91精品国产一区二区三区| 欧美日韩视频在线第一区| 波多野结衣视频一区| 蜜桃精品视频在线| 亚洲国产中文字幕| 一区二区在线看| 国产三级精品视频| 精品国产成人系列| 日韩视频不卡中文| 亚洲成人动漫在线观看| 亚洲乱码国产乱码精品精的特点| 久久久久国产精品厨房| 欧美成人综合网站| 国产亚洲精品aa| 99久久99精品久久久久久| 亚洲欧美色一区| 亚洲va在线va天堂| 精品亚洲成a人| 亚洲成人黄色影院| 亚洲激情图片qvod| 国产日韩欧美高清| 94-欧美-setu| 一区二区三区四区蜜桃| 欧美午夜理伦三级在线观看| 不卡电影免费在线播放一区| 亚洲国产精品久久久久秋霞影院| 欧美一区二区三区日韩视频| 91亚洲精品乱码久久久久久蜜桃| 成人爽a毛片一区二区免费| 国产一区在线看| 国产精品伊人色| 日本一道高清亚洲日美韩| 午夜av电影一区| 国产精品色眯眯| 亚洲精品在线一区二区| 99热99精品| 91农村精品一区二区在线| 国产精品一二三区在线| 国产成人精品综合在线观看 | 国产色爱av资源综合区| 日本欧洲一区二区| 免费日韩伦理电影| 蜜桃视频在线观看一区| 麻豆精品新av中文字幕| 一区二区三区日韩精品| 久久天堂av综合合色蜜桃网| 日韩精品一区在线| 日韩欧美一区电影| 欧美美女直播网站| 韩国成人精品a∨在线观看|