ruby - Rails 将数组合并为数组的数组

我是 Ruby on Rails 的新手,我遇到了一个奇怪的数组情况,我无法弄清楚如何有效地执行。

我有这个起始数组:

[["6884", true], ["8456", false], ["5631", false]]

然后我有另一个一维数组:

["6884", "8023", "9837"]

我想通过将值附加到二维数组中相同索引处的数组末尾,将一维数组合并到数组数组中。

所以最终的产品应该是:

[["6884", true, "6884"], ["8456", false, "8023"], ["5631", false, "9837]]

因此,一维数组中索引 0 处的值将附加到二维数组中索引 0 处的数组末尾,对于一维数组中的每个元素依此类推。是否有一种简单的 Ruby 方法可以完成此任务?

最佳答案

您可以使用 zipflatten 方法,如下所示:

a = [["6884", true], ["8456", false], ["5631", false]]
b = ["6884", "8023", "9837"]

a.zip(b)
# [[["6884", true], "6884"], [["8456", false], "8023"], [["5631", false], "9837"]]

# Then use flatten to this array:
a.zip(b).map(&:flatten)
# [["6884", true, "6884"], ["8456", false, "8023"], ["5631", false, "9837"]]

https://stackoverflow.com/questions/73449227/

相关文章:

perl - 如何将 Data::Dumper 输出转换回 Perl 数据结构?

php - 网页如何在下次登录时记住您?

php - 在创建 PHP 类实例时运行代码?

asp.net - 在 .net 中,是否有与 Server.HTMLEncode() 相反的函数?

sql - 如何在 SQL Server 2005 数据库中使用 T-SQL 用零填充 NVARCH

.net - 不可变对象(immutable对象)的约定

python - Julia 代码没有完成而 Python 代码完成了

perl - 为什么 Scalar::Util::Numeric 安装不正确?

regex - 字符串末尾的正则表达式 _#

r - 如何提取R中的第一个字符串