ruby 如何每隔30项迭代一个数组

fwzugrvs  于 2022-11-04  发布在  Ruby
关注(0)|答案(2)|浏览(100)

我有一个包含234个项目的产品数组。我需要创建另一个包含分页(每10个项目)的数组,例如:

[
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
[1,2,3,4,5,6,7,8,9,10],
...
]

我该如何解决这个问题?我尝试了_组_,但没有成功。

wfveoks0

wfveoks01#

您正在寻找each_slice
每当遇到数组问题时,请检查Enumerablein_groups_of是Rails方法,并在幕后使用each_slice

hwamh0ep

hwamh0ep2#

只需使用Enumerable#each_slice

[*1..34].each_slice(10).to_a

# =>

# [

# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],

# [11, 12, 13, 14, 15, 16, 17, 18, 19, 20],

# [21, 22, 23, 24, 25, 26, 27, 28, 29, 30],

# [31, 32, 33, 34]

# ]

相关问题