gpt4 book ai didi

ruby - 在一行中用 Ruby 中的默认值将哈希声明为常量

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

我的目标是使用具有默认值的哈希作为类常量。为此,在我看来,我必须在一行中将哈希初始化为具有预定义值和默认值的常量。

根据 Ruby 文档,我可以通过两种方式设置默认值:

  • 然后在构造函数中添加如下值:

    MY_HASH = Hash.new(-1)
    MY_HASH[1] = 0
    MY_HASH[2] = 42
  • 首先添加值,然后设置默认值:

    MY_HASH = {
    1=>0,
    2=>42,
    }
    MY_HASH.default = -1

我试着像这样在一行中完成,但它不起作用:

    MY_HASH = {
1=>0,
2=>42,
}.default = -1

#It's the same as :
MY_HASH = -1

有没有办法在一行中声明一个具有默认值的哈希?

最佳答案

您可以使用更新:

MY_HASH = Hash.new(-1).update(1 => 0, 2 => 42)
MY_HASH[1]
#=> 0
MY_HASH[52]
#=> -1

或者你可以使用Hash#merge

关于ruby - 在一行中用 Ruby 中的默认值将哈希声明为常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37011446/

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