gpt4 book ai didi

ruby-on-rails - 解释 Ruby 中的哈希

转载 作者:太空宇宙 更新时间:2023-11-03 17:12:16 25 4
gpt4 key购买 nike

我正在阅读 Jose Valim 的 Crafting Rails Applications 一书,遇到了一些我不明白的地方。我想知道是否有人可以用简单的英语解释下面三种哈希类型之间的区别。

  1. 例如,嵌套散列(如本例中所示)以何种方式为嵌套散列。在其他情况下,我理解嵌套哈希,但不要在这里理解。

  2. 在第二个例子中,“数组”以何种方式成为“键”。对我来说,它看起来就像一个有四个变量的数组。

  3. 第三个例子以什么方式是一个以“hash as key”的hash。

    嵌套哈希

    @cached[键][前缀][名称][部分]

    以数组为键的简单散列

    @cached[[key, prefix, name, partial]]

    以散列为键的简单散列

    @cached[:key => key, :prefix => prefix, :name => name, :partial => partial]

最佳答案

嵌套散列,很好,嵌套散列。给出的示例 @cached[key][prefix][name][partial] 向您展示了特定值的“路径”,因此在这种情况下,散列可能如下所示:

@cache = {
key => {
prefix => {
name => {
partial => "value"
}
}
}
}

对于以数组作为键的简单散列,他们使用该 4 元素数组作为散列中的键之一。

@cache = {
[key, prefix, name, partial] => "value",
another_key => "another value"
}

对于以散列作为键的简单散列,他们使用该散列(请注意散列的 {} 是可选的,这可能会导致一些混淆)作为散列中的键之一。

@cache = {
{:key => key, :prefix => prefix, :name => name, :partial => partial} => "value",
another_key => "another value"
}

希望对您有所帮助!

关于ruby-on-rails - 解释 Ruby 中的哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9107223/

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