基本的Ruby类 - 正确的代码,以便返回预期的值

时间:2014-05-28 19:18:14

标签: ruby

非常基础,但我无法弄清楚! Noob问题 - 我已经尝试了几个不同的答案,我仍然得到参数错误。有人可以帮助启发我正确的答案吗?

更正此代码,以便greet函数返回预期值。

class Person
  def initialize(name)
    @name = name
  end

  def greet(other_name)
    "Hi #{other_name}, my name is #{name}"
  end
end

2 个答案:

答案 0 :(得分:6)

class Person
  def initialize(name)
    @name = name
  end

  def greet(other_name)
    "Hi #{other_name}, my name is #{@name}"
  end
end

您需要通过在变量名前加@来访问您的实例变量。就像分配它时一样。

答案 1 :(得分:4)

<{1}}中未提供

name。您可以使用greet,也可以添加accessor

@name

class Person
  def initialize(name)
    @name = name
  end

  def greet(other_name)
    "Hi #{other_name}, my name is #{@name}"
  end
end