gpt4 book ai didi

ruby - 使用类作为散列的键?

转载 作者:数据小太阳 更新时间:2023-10-29 07:50:09 25 4
gpt4 key购买 nike

我刚刚意识到我正在使用类类型作为散列变量的键:(不完全是这个)

def add_to_cache(obj)
@cache[obj.class] = [] unless @cache.has_key? obj.class
@cache[obj.class] << obj
end

所以我很好奇是否有人可以解释一下。有什么缺点吗?它是如何存储在内存中的?我应该将它 (obj.class) 转换为 Symbol 还是 String?

最佳答案

在 ruby​​ 中,您可以将任何对象作为散列的键。调用对象的方法 hash 进行实际的散列。我认为此方法已针对 Class 进行了足够优化和足够好。不需要在此处将类转换为字符串或符号。

关于ruby - 使用类作为散列的键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19662010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com