我正在寻找一种有效的方法来检查Golang中是否存在值。我知道的方法是使用for循环/范围。有没有更好的方法可以做到这一点?

任何帮助,将不胜感激 :)

最佳答案

没有内置的方法来查找映射是否包含特定值。如果您需要此行为有效,请考虑使用其他数据结构来支持它。

请注意,尽管Java的Map提供了 containsValue ,但documentation表示:



因此,如果您需要Java Map的高效实现,则还需要提供一个。

什么是“有效的实现”是指根据要映射的数据类型进行更改。例如,如果值始终是唯一的,则只需维护一个map[value]key就足够了。如果不是,则需要更多原则性的东西。

关于performance - 检查Golang map 中是否存在值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47212564/

10-16 20:44