编辑:Jeremy Wall 帮助我意识到我问的问题比我预期的更具体;这是一个更好的版本。
假设我想表示一个表,该表将某种类型 B 的值与定义了相等性的某种类型 A 的值序列相关联。在 Go 中最好的方法是什么?
显然,对于表,我想使用 Go 映射,但是对于 A 类型的值序列,我可以使用什么?在 Go 中,切片不能用作 map 的键;数组可以,但是数组的长度是它类型的一部分,我对能够使用在运行时确定的长度序列感兴趣。我可以 (1) 使用 A 的数组为它们声明最大长度,或者 (2) 使用 A 的切片,将它们序列化为字符串以用作键(Awk 和 Lua 程序员熟悉这种技术......)。Go 的这个“特性”有没有比我描述的更好的解决方法?
正如 Jeremy Wall 在回答我原来的问题版本时指出的那样,我有 A = int,选项 (2) 对于整数来说非常好,因为您可以使用符文切片,将其转换为字符串只是一个强制转换。