Ruby:如何使class返回true?

daolsyd0  于 2023-02-12  发布在  Ruby
关注(0)|答案(1)|浏览(230)

我是一个ruby初学者,我不知道如何使test返回'true'

class Hash
  def in(*)
  end
end

# cannot alter below this line
def test
  { a: 1 }.in(:a) == 1
end

puts "test: #{test}"

据我所知,Hash类中插入了一个方法,但是我不知道如何获得传递参数的“值”,如果这有意义的话。无论哪种方式,我都很困惑。谢谢你的帮助。

vfh0ocws

vfh0ocws1#

未将Hash类中的in方法定义为返回任何内容。
您需要在hash类中定义in方法:

class Hash
  def in(key)
    self[key]
  end
end

def test
  { a: 1 }.in(:a) == 1
end

puts "test: #{test}"

相关问题