从ruby方法保存和调用多个变量

时间:2012-09-25 15:42:40

标签: ruby variables methods

也许我一直在盯着我的Ruby书,言语不再有任何意义,但我想我也可以问。

我想要做的是,而不是通过我的函数头传递大量变量,或者不使用全局变量,我想在一个方法中保存我的变量,并多次调用它们,在我的职能范围内。我实际上遇到的问题是范围。

def DateGrab()
 print "\nEnter the date you're looking for (Month/Day): "
 longdate = gets.strip.split(/\/| /)
 if longdate[0].length > 3
   month = longdate[0].slice(0..2)
 else
   month = longdate[0]
 end
  day = longdate[1]
  year = `date | awk '{print $6}'`.strip
  grepdate = "#{day}/#{month}/#{year}"
  date = Date.parse("#{day}-#{month}-#{year}").strftime('%m%d%Y').strip
end

我希望通过多个函数传递“grepdate”和“date”,我觉得使用方法会更容易,但每次我尝试调用变量时,都会得到一个“未定义的局部变量或方法” “错误。

1 个答案:

答案 0 :(得分:0)

您想查看实例变量。您可以通过@grepdate = "something"设置它们。您可以在整个班级以及该班级的所有方法中访问这些实例变量。