【发布时间】:2017-08-26 00:52:12
【问题描述】:
我有一个二维数组:
a = [["john doe", "01/03/2017", "01/04/2017", "event"], ["jane doe", "01/05/2017", "01/06/2017", "event"]...]
我想将它转换为 ruby 中的值对象。我在这个问题的第二个答案中找到了如何使用哈希 Ruby / Replace value in array of hash 来做到这一点,但不是二维数组。我想将a[0][0] 的值分配给名为"name"、a[0][1] 到"date1"、a[0][2] 到"date2" 和a[0][3] 到"event" 的属性。
这就像我想要完成的事情,虽然它不完整,我不知道如何在一个循环中为不同的属性分配多个索引:
class Schedule_info
arrt_accessor :name, :date1, :date2, :event
def initialize arr
#I would like this loop to contain all 4 attr assignments
arr.each {|i| instance_variable_set(:name, i[0])}
【问题讨论】:
-
您的意思是要将此数组数组转换为具有名称、日期等方法的对象数组吗?以便在转换后您可以执行 a[0].name、a[1].event 等?
-
我最终想做一些类似于这个问题的事情:link 但使用我的二维数组
-
有人能说明为什么我被否决了吗?
-
从您的问题中不清楚您到底想要什么。你能给我们一个你想要的样本输出值吗?还是示例数据结构?
-
在询问我们之前,您也没有表现出任何个人尝试这样做。如果你能证明你所做的一些尝试是无效的,那么你更有可能获得投票。