【问题标题】:Ruby: How to use array names stored in arrayRuby:如何使用存储在数组中的数组名称
【发布时间】:2015-03-19 17:28:03
【问题描述】:

我正在尝试遍历存储在多个数组中的所有可能的值组合。为此,我决定将数组名称放入一个数组中,然后使用排列来构建数组的所有可能组合,我的想法是然后我将在 '.each do' 中使用数组存储的数组名称

$arrays = ["$array1", "$array2", "$array3"]

$arrays.permutation(3).each do |val1,val2,val3|
  val1.each do |step|
    ...check
      val2.each do |step2|
        ...check2
          val3.each do |step3|
            ...check3
           end
       end
    end
 end

但是,您不能将数组名称作为字符串传递。我怎样才能让它发挥作用?

【问题讨论】:

  • 您使用全局变量作为数组名称的代码味道不好。最好了解变量的作用域。

标签: ruby arrays string


【解决方案1】:

直接引用数组(而不是使用包含变量名的字符串):

$arrays = [$array1, $array2, $array3]

【讨论】:

  • 哈!我怎么没想到!谢谢!
  • @WillVonWizzlepig:不客气 =) 如果您认为这个答案可以解决问题,请随时投票和/或接受。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-28
  • 1970-01-01
  • 1970-01-01
  • 2017-08-27
  • 1970-01-01
  • 2012-05-09
  • 2014-02-03
相关资源
最近更新 更多