创建数组数组的优雅方式?

时间:2014-02-22 01:01:43

标签: ruby arrays

我想从另一个数组创建一个数组数组:

a = [11,1,[23,21],14,[90,1]]
a.map { |e| e.is_a?(Array) ? e : [e] }
# => [[11], [1], [23, 21], [14], [90, 1]]

有优雅的方法吗?

1 个答案:

答案 0 :(得分:6)

我会这样做:

a = [11,1,[23,21],14,[90,1]]
a.map { |e| [*e] }
# => [[11], [1], [23, 21], [14], [90, 1]]

或使用Kernel#Array()

a.map { |e| Array(e) }
# => [[11], [1], [23, 21], [14], [90, 1]]

使用,你认为优雅,对我来说都很优雅: - )