首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GoLang,"hash.Write“,"write()”函数从何而来?

GoLang,"hash.Write“,"write()”函数从何而来?
EN

Stack Overflow用户
提问于 2014-05-17 15:35:46
回答 1查看 1.6K关注 0票数 2
代码语言:javascript
复制
func hash(s string) uint32 {
    h := fnv.New32a()
    h.Write([]byte(s))
    return h.Sum32()
}

为了这段代码。我知道h是什么类型的。它是散列的。但是对于Hash类型,我没有看到任何写()方法。http://golang.org/pkg/hash/这是什么写()?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-17 15:42:36

哈希接口嵌入编写者接口。因此,任何要实现哈希接口的类型,都需要实现包含写方法的Writer接口。

编写方法的原因是您可以计算任何可以写入的散列。例如,您可以计算对象的格式化表示的哈希(通过使用fmt包),或者计算json表示的哈希(通过使用json包)等等。

代码语言:javascript
复制
h := fnv.New32a()
fmt.Fprint(h, myobject)
// alternatively:
// json.NewEncoder(h).Encode(myobject)
// etc.
return h.Sum32()
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23713146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档