gpt4 book ai didi

ruby - 在 Ruby 中是否有一种惯用的方法来操作 2 个数组?

转载 作者:数据小太阳 更新时间:2023-10-29 07:12:12 25 4
gpt4 key购买 nike

a = [3, 4, 7, 8, 3]
b = [5, 3, 6, 8, 3]

假设数组长度相同,是否有办法使用 each 或其他一些惯用方法从两个数组的每个元素中获取结果?不使用计数器?

例如获取每个元素的乘积:[15, 12, 42, 64, 9]

(0..a.count - 1).each do |i| 太丑了...

ruby 1.9.3

最佳答案

使用 Array.zip 怎么样? :

>> a = [3,4,7,8,3]
=> [3, 4, 7, 8, 3]
>> b = [5,3,6,8,3]
=> [5, 3, 6, 8, 3]
>> c = []
=> []
>> a.zip(b) do |i, j| c << i * j end
=> [[3, 5], [4, 3], [7, 6], [8, 8], [3, 3]]
>> c
=> [15, 12, 42, 64, 9]

注意:我非常不是 Ruby 程序员,所以对于我践踏的任何习语,我深表歉意。

关于ruby - 在 Ruby 中是否有一种惯用的方法来操作 2 个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12966412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com