主页 > 知识库 > 在go中使用omitempty的代码实例

在go中使用omitempty的代码实例

热门标签:浙江高速公路地图标注 南通如皋申请开通400电话 西部云谷一期地图标注 学海导航地图标注 中国地图标注省会高清 江西转化率高的羿智云外呼系统 地图标注的汽车标 广州呼叫中心外呼系统 高德地图标注口诀

omitempty在go中的使用

直接上代码:

package main
import (
  "encoding/json"
  "fmt"
)
type Person struct {
  Name string `json:"name"`
  Age int  `json:"age"`
  Addr string `json:"addr,omitempty"`
}
func main() {
  p1 := Person{
    Name: "taoge",
    Age: 30,
  }
  data, err := json.Marshal(p1)
  if err != nil {
    panic(err)
  }
  fmt.Printf("%s\n", data)
  fmt.Println(p1.Name, p1.Age, p1.Addr)
  p2 := Person{
    Name: "Cang Laoshi",
    Age: 18,
    Addr: "Japan",
  }
  data2, err := json.Marshal(p2)
  if err != nil {
    panic(err)
  }
  fmt.Printf("%s\n", data2)
  fmt.Println(p2.Name, p2.Age, p2.Addr)
}

结果:

{"name":"taoge","age":30}
taoge 30
{"name":"Cang Laoshi","age":18,"addr":"Japan"}
Cang Laoshi 18 Japan

可以看到,有了omitempty后,如果addr为空, 则生成的json中没有addr字段。

可以去掉omitempty, 再试试。

不多说。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:
  • go for range坑和闭包坑的分析
  • strings命令分析浅谈Go和C++编译时的一点小区别
  • go panic时如何让函数返回数据?
  • go代码实现买房贷款月供计算的方法
  • linux下搭建go环境的安装配置讲解
  • golang的空标识符理解
  • 为什么Go语言把类型声明放在后面?
  • 用go gin server来做文件上传服务
  • 使用go gin来操作cookie的讲解
  • go for range遍历二维数组的示例

标签:吐鲁番 曲靖 许昌 保定 贵州 德宏 常州 东营

巨人网络通讯声明:本文标题《在go中使用omitempty的代码实例》,本文关键词  在,中,使用,omitempty,的,代码,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《在go中使用omitempty的代码实例》相关的同类信息!
  • 本页收集关于在go中使用omitempty的代码实例的相关信息资讯供网民参考!
  • 推荐文章