在Rails 3.2应用程序中,我有一个类似的数组:
arr = ["a", "b", "c", "d", "e"]
我想把它分成3个部分:
[["a", "b"], ["c", "d"], ["e"]]
我想要一个函数来拥有这个数组的第一部分。
我一直想要3个部分。所以,如果我有:
["a", "b", "c", "d", "e", "f", "g", "h"]
我希望:
[["a", "b", "c"], ["d", "e", "f"], ["g", "h"]]
你有一个简单的解决方案吗?
答案 0 :(得分:1)
["a", "b", "c", "d", "e"].in_groups_of(2, false)
# => [["a", "b"], ["c", "d"], ["e"]]
如果你总是想要3个部分,那就应该这样做
parts_count = 3
group_count = arr.length.fdiv(parts_count).ceil
arr.in_groups_of(group_count, false)
# => [["a", "b"], ["c", "d"], ["e"]]
更多信息here。