【问题标题】:send array objects from one array to another between classes ruby在类 ruby​​ 之间将数组对象从一个数组发送到另一个数组
【发布时间】:2017-02-04 22:06:52
【问题描述】:

因此,如果我有 2 个位于不同类中的数组,那么从完整数组中删除所有对象并将它们添加到另一个类中的空数组中的最简单方法是什么。例如,这将是一个之前

class Red
  def initialize  
    @red_array = []
  end
end


class Blue
  @blue_array = [red_object, red_object2, red_object3]
end

这将是之后

class Red
  def initialize  
    @red_array = [red_object, red_object2, red_object3]
  end
end


class Blue
  @blue_array = []
end

【问题讨论】:

  • 这只是出于好奇还是您有这样做的理由?仅供参考:第一个实例变量属于 Red 的实例,而第二个实例变量属于 Blue 类的实例。
  • 我这样做是因为我实际上是在尝试为一家饼干面包店建模。在我的实际代码中,我有一个装满 cookie 对象的托盘,它是烤箱类的一部分,我想将该数组放在我拥有的店面类中......所以从托盘中取出物品并将它们放在店面数组中...希望对您有所帮助!
  • 问我是否好奇而不回答我的问题有什么意义。这是我的问题,所以我应该期待答案。不是你……
  • @RobMatthews 这并不完全是它的工作原理,通常时间问题没有足够的信息,所以有必要向发布者寻求解释。
  • 您对您的对象模型的回复实际上是有用的。我怀疑你描述的模型可以大大改进。我的建议是在code review 上发布您的代码,并询问该模型是否适合您的目标。

标签: arrays ruby push swap


【解决方案1】:

根据您的描述,您的解决方案是这样的

class Red
  attr_accessor :red_array

  def initialize
    @red_array = []
  end
end

class Blue
  attr_accessor :blue_array

  def initialize  
    @blue_array = []
  end
end

reds = Array.new(3,Red.new)

red = Red.new
red.red_array = reds

blue = Blue.new
blue.blue_array, red.red_array = red.red_array, blue.blue_array

【讨论】:

  • blue.blue_array, red.red_array = red.red_array, blue.blue_array
  • @EricDuminil 不错!!让我改变它。谢谢!
猜你喜欢
  • 2020-08-23
  • 2017-03-02
  • 2018-02-05
  • 1970-01-01
  • 1970-01-01
  • 2014-02-04
  • 2013-04-12
  • 2021-05-02
  • 1970-01-01
相关资源
最近更新 更多