189 8069 5689

golang如何使用MarshalText支持非字符串作为key的map

小编给大家分享一下golang如何使用MarshalText支持非字符串作为key的map,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的吉首网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

使用 MarshalText支持非字符串作为key的map

虽然 JSON 标准里只支持 string 作为 key 的 map。但是 golang 通过 MarshalText() 接口,使得其他类型也可以作为 map 的 key。例如

f, _, _ := big.ParseFloat("1", 10, 64, big.ToZero)
val := map[*big.Float]string{f: "2"}
str, err := MarshalToString(val)
should.Equal(`{"1":"2"}`, str)

其中 big.Float 就实现了 MarshalText()

看完了这篇文章,相信你对“golang如何使用MarshalText支持非字符串作为key的map”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


本文题目:golang如何使用MarshalText支持非字符串作为key的map
网站URL:http://cdxtjz.cn/article/gpcphh.html

其他资讯