是否有在自定义类中启用哈希样式查找的方法?

时间:2013-09-29 17:05:29

标签: ruby

我很确定我可以在我的课程中实现一些方法来实现这样的查找:

foo = MyClass.new
foo["bar"] = 123

但他们是什么?

1 个答案:

答案 0 :(得分:3)

您可以随时定义自己的[][]=方法(google:“运算符重载”) e.g:

class MyClass
  def [](key)
    # ...
  end

  def []=(key, value)
    # ... 
  end
end

以下是一些例子:

http://net.tutsplus.com/tutorials/ruby/ruby-for-newbies-operators-and-their-methods/

https://www.ruby-forum.com/topic/4067570

how to override [] brackets in ruby?