Ruby 试图找出什么';这个密码有什么问题
我想不出解决办法Ruby 试图找出什么';这个密码有什么问题,ruby,Ruby,我想不出解决办法 class Person def initialize(name) @name = name end def greet(other_name) @other_name print "Hi #{@other_name}, my name is #{@name}" end end kit = Person.new("Tom", "Jerry") kit.greet 如果您能伸出援助之手,我将不胜感激。在initialize方法中,您应
class Person
def initialize(name)
@name = name
end
def greet(other_name)
@other_name
print "Hi #{@other_name}, my name is #{@name}"
end
end
kit = Person.new("Tom", "Jerry")
kit.greet
如果您能伸出援助之手,我将不胜感激。在initialize方法中,您应该使用两个参数,因为您使用两个参数调用它。您在
greet
函数中声明了@other_name
变量,而不是initialize
函数
这会奏效的
class Person
def initialize(name, other_name)
@name = name
@other_name = other_name
end
def greet
print "Hi #{@other_name}, my name is #{@name}"
end
end
kit = Person.new("Tom", "Jerry")
kit.greet
你必须做出决定: 您想在初始化
人员时同时提供两个姓名吗
:
class Person
def initialize(name, other)
@name = name
@other = other
end
def greet
puts "Hi #{@other}, my name is #{@name}"
end
end
kit = Person.new("Tom", "Jerry")
kit.greet
#=> Hi Jerry, my name is Tom
或者在调用greet
方法时是否要提供第二个名称:
class Person
def initialize(name)
@name = name
end
def greet(other)
puts "Hi #{other}, my name is #{@name}"
end
end
kit = Person.new("Tom")
kit.greet("Jerry")
#=> Hi Jerry, my name is Tom
考虑这样编写代码:
class Person
attr_reader :name
def initialize(name)
@name = name
end
def greet(person)
puts "Hi #{person.name}, my name is #{name}"
end
end
tom = Person.new("Tom")
jer = Person.new("Jerry")
tom.greet(jer) #=> Hi Jerry, my name is Tom.
这样你就可以把另一个人作为一个对象,而不仅仅是一个名字。我觉得这很有趣,因为我试过了,但没有成功。它说,“'initialize':参数数量错误(给定1,预期2)(参数错误)来自'new'from'您是否单击了链接,然后单击了run。因为它将以100%的方式工作是的,我这样做了&它运行得很好。也许我所在的这个网站叫做“Codewars”“要我做不同的事情这需要一个清晰的问题陈述,否则它只会在系统中丢失,对其他任何人都没有用。”。标题需要提到您需要以某种方式解决的问题,并且您需要解释您试图做什么,而不仅仅是显示非工作代码。就目前而言,这只是一个个人“请调试我的代码并帮助我完成任务”,对网站没有长期价值。这是一个合理的对象模型,但完全不清楚它是否符合OP的目标,因为OP实际上没有说明它们是什么。