如何在Ruby中实现选项哈希?

And*_*ynh 4 ruby hash options

如何实现选项哈希?具有选项哈希的类的结构如何?说我有一个人课.我想实现一个像my_age这样的方法,当被调用时会告诉我使用选项哈希的年龄.

小智 6

你可以这样做:

class Person

  def initialize(opts = {})
    @options = opts
  end

  def my_age
    return @options[:age] if @options.has_key?(:age)
  end

end
Run Code Online (Sandbox Code Playgroud)

现在你可以打电话给这样的年龄

p1 = Person.new(:age => 24)<br/>
p2 = Person.new

p1.my_age # => 24<br/>
p2.my_age # => nil
Run Code Online (Sandbox Code Playgroud)