zoukankan      html  css  js  c++  java
  • Go结构体嵌套

    1. Go结构体嵌套

    1.1 嵌套别的结构体

    package main
    
    import (
        "encoding/json"
        "fmt"
    )
    type addr struct {
        Province string
        City string
    }
    type info struct {
        Age int
        Email string
    }
    type student struct {
        Name string
        Address addr   // 嵌套别的结构体
    }
    
    func main() {
        
        st := student{
            Name: "网五",
            Address: addr{
                Province: "bj",
                City:     "bj",
            }
        }
        s1,_  := json.Marshal(st)
        fmt.Println(st)
        fmt.Println(string(s1))
    }

    结果

    {网五 {bj bj} { } {0 }}
    {"Name":"网五","Address":{"Province":"bj","City":"bj"},"Province":"","City":"","Age":0,"Email":""}

    1.2 匿名嵌套别的结构体,类型名做名称

    package main
    
    import (
        "encoding/json"
        "fmt"
    )
    
    type addr struct {
        Province string
        City string
    }
    type info struct {
        Age int
        Email string
    }
    type student struct {
        Name string
        Address addr   // 嵌套别的结构体
        addr // 匿名嵌套别的结构体,就使用类型名做名称
        info
    }
    
    func main() {
    
        st := student{
            Name: "网五",
            Address: addr{
                Province: "bj",
                City:     "bj",
            },
            addr:addr{"bj", "bj"},   // 属性名称和结构体名称保持一致
            info:info{19,"aaa@navinfoolpm"},
        }
        s1,_  := json.Marshal(st)
        fmt.Println(st)
        fmt.Println(string(s1))
    }

    结果

    {网五 {bj bj} {bj bj} {19 aaa@navinfoolpm}}
    {"Name":"网五","Address":{"Province":"bj","City":"bj"},"Province":"bj","City":"bj","Age":19,"Email":"aaa@navinfoolpm"}
  • 相关阅读:
    iOS开发开辟线程总结--NSThread
    iOS开发GCD的简单使用
    iOS开发本地通知
    iOS开发JOSNModel<optional>,<convertondemand>,<index>
    开发iOS百度地图大头针可以重复点击
    iOS开发跳转指定页面
    iOS开发解决 jsonModel 属性跟系统的重复
    检测是否IE浏览器
    String.prototype运用
    C#读写XML
  • 原文地址:https://www.cnblogs.com/supery007/p/13328347.html
Copyright © 2011-2022 走看看