我在Ruby on Rails(3.1)中有一个数组数组,其中所有内部数组的大小都不同。有没有一种方法可以轻松地将所有内部数组连接起来,使所有项目都成为一个大的一维数组?
我知道您可以使用Array :: concat函数来连接两个数组,并且我可以做一个循环来依次连接它们,如下所示:
concatenated = Array.new array_of_arrays.each do |array| concatenated.concat(array) end 但是我想知道是否有像Ruby这样的单行代码能以一种更简洁的方式做到这一点。
谢谢你的帮助。 问题来源于stack overflow
您正在寻找#flatten:
concatenated = array_of_arrays.flatten 默认情况下,这将递归地平铺列表。#flatten接受一个可选参数来限制递归深度–文档列出了一些示例来说明差异。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。