你能映射,点击和/或注入splat运算符吗?

时间:2014-07-02 15:37:43

标签: ruby

我有一组数组数组。我想知道你是否可以拆掉中间阵列。

# Example Input
x = [[[139, 65], [176, 83]], [[203, 65], [139, 83]], [[139, 75], [176, 93]], [[203, 75], [139, 93]]]

将内脏扯到

[[139, 65], [176, 83], [203, 65], [139, 83], [139, 75], [176, 93], [203, 75], [139, 93]]

使用map(&:*)仅注入乘法方法并引发错误。是否有一个方法splat与我们可能会使用的替代名称?

如果不是,那么编写方法就相当容易。

1 个答案:

答案 0 :(得分:5)

发现Array#flatten

x = [[[139, 65], [176, 83]], [[203, 65], [139, 83]], [[139, 75], [176, 93]], [[203, 75], [139, 93]]]
x.flatten(1) # => [[139, 65], [176, 83], [203, 65], [139, 83], [139, 75], [176, 93], [203, 75], [139, 93]]