gpt4 book ai didi

ruby - 迭代多个数组的最佳方法?

转载 作者:数据小太阳 更新时间:2023-10-29 06:57:18 24 4
gpt4 key购买 nike

在 Ruby 中迭代多个数组的最佳(美观且高效)方法是什么?假设我们有一个数组:

a=[x,y,z]
b=['a','b','c']

我想要这个:

x a
y b
z c

谢谢。

最佳答案

另一种方法是使用 each_with_index。快速基准测试表明这比使用 zip 稍微快一些。

a.each_with_index do |item, index|
puts item, b[index]
end

基准:

a = ["x","y","z"]
b = ["a","b","c"]

Benchmark.bm do |bm|
bm.report("ewi") do
10_000_000.times do
a.each_with_index do |item, index|
item_a = item
item_b = b[index]
end
end
end
bm.report("zip") do
10_000_000.times do
a.zip(b) do |items|
item_a = items[0]
item_b = items[1]
end
end
end
end

结果:

      user     system      total        real
ewi 7.890000 0.000000 7.890000 ( 7.887574)
zip 10.920000 0.010000 10.930000 ( 10.918568)

关于ruby - 迭代多个数组的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4816959/

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