如何在Golang中使用与地图中的键相同的数据来区分两种自定义结构类型?

sofs1:
type Student struct {
    id int,
    name string,
}

//If I create two structs, 
s := Student{1, "jack"}
t := Student{1, "jack"}

m := make(map[Student]bool)

m[s] = true
m[t] = true

1)可以吗?2)在Golang中是否有类似于Java的hashCode?

Burak Serdar:

如果两个结构值具有相同的成员值,并且所有这些成员都是可比较的,则这些结构相等。在您的示例中:s==ttrue结构值本身就是映射键。因此,在您的示例中,地图的末尾只有一个元素。

有关可比性的更多信息:

https://golang.org/ref/spec#Comparison_operators

hashCodeGo中没有等效项

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在两种自定义类型之间进行转换

如何使用两种不同的relativeTime自定义?

如何在c中使用自定义类型从节点列表中读取数据结构

如何在Golang中将具有两种不同数据类型的JSON数组解析为结构

如何从两种自定义帖子类型中获取所有帖子?

如何区分两种动态类型?

两种不同的类型如何使用接口在golang中实现相同的方法?

如何在自定义视图中使用 SimpleOnGestureListener?

如何在 swift 中使用/引用自定义类型的字典中的键?

如何在Google地图中创建自定义地图?

使用自定义数据结构作为值的地图中的错误

如何在Firestore中使用自定义键更新数据

如何在JPA列中使用自定义类型?

如何在Java中使用自定义类型注释

如何在猫鼬中使用自定义类型?

如何在 ConfigurationSection 中使用自定义类型的值?

如何在Hadoop中使用自定义类型

我应该如何在一次模拟中使用两种车辆类型?

如何在Flutter中使用自定义数据类型下拉列表按钮?

如何在自定义数据类型的集合中使用插入?C++

如何在TypeScript中从地图的自定义键类型获取对象?

使用Aeson时如何在地图中使用求和类型作为键?

连接两种不同类型的表时在Tableau中进行自定义聚合

Android:为一种EditText使用两种自定义字体

如何区分两种不同类型的哈希表

将JSON文件读入自定义类型结构中,我需要在需要类型字符串而不是自定义类型的函数中使用键

如何在地图中使用结构指针?

自定义组件两种方式的数据绑定更新而不会发出事件

5种自定义帖子类型以使用相同的自定义单个模板