【发布时间】:2014-09-26 16:05:27
【问题描述】:
我有一个包含一些 nil 值的二维数组。
require 'date'
array = [["2014-01-12", "2014-01-12", "2014-01-12"],
["2012-08-26", "2012-10-18", nil],
["2013-04-09", "2013-05-22", "2013-07-01"]]
所需的结果是日期对象数组。结果数组应如下所示 (用于显示目的的日期对象):
changed_array = [#<Date: 2014-01-12 ((2456874j,0s,0n),+0s,2299161j)>, nil, #<Date: 2012-07-31 ((2456874j,0s,0n),+0s,2299161j)>]
我考虑过这样的事情:
changed_array = array.map { |due| (Date.strptime(due[2], "%Y-%m-%d")) unless (due[2] == nil) }
感谢任何输入。
编辑:
作为一名编码新手,我将不胜感激有关此解决方案的替代方法的任何意见!
【问题讨论】:
-
...您的解决方案似乎也有效,您认为它有什么问题?
-
你的问题是什么?
-
changed_array和changed_date有什么区别? -
@sawa 这是一个错字。没有编辑也包括一个问题。如果有人知道为什么给它一个-1,请告诉我为什么!输入非常有用,所以感谢您抽出宝贵时间!
标签: ruby arrays string date null