【问题标题】:Array Not Defined in Loop? [closed]数组未在循环中定义? [关闭]
【发布时间】:2015-03-10 21:06:33
【问题描述】:

我有如下代码:

arra = ["a","b","c"]

arrb = ["a","e","d"]

arrc = arra - arrb

while arrc.size != 0
   somedef(arrc)
end

我收到此错误: NameError: main:Object 的未定义局部变量或方法“arrc” 指向 while 循环内的行。谁能帮我理解这是为什么?

【问题讨论】:

  • 你希望while arrc做什么?
  • 显示完整的错误信息和somedef的实现
  • arrc,size 不等于:arrc.size :-)

标签: ruby arrays loops


【解决方案1】:

你是否在“somedef”中做这样的事情:

def somedef(a)
    p arrc
end

如果是这样,您会收到错误,因为“arrc”不是全局变量。改为这样做:

def somedef(a)
    p a
end

【讨论】:

  • 这可能是我的答案。如果我把我的while循环变成一个def,我可以把数组作为参数,然后它就会被正确传递。谢谢!
猜你喜欢
  • 2011-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-07
  • 2013-12-17
相关资源
最近更新 更多