Ruby – 每个起始偏移量

如何设置 ruby中每个循环的起始偏移量?
我希望循环从[3]而不是[0]开始.我该如何设定?
a = [ab,cd,ef,gh,hi,jk]

a.each do |i|
#some stuff
end

解决方法

另一种可能更直接可读的可能性是使用 Array#drop
a.drop(3).each do |i|
  # do something with item i
end

现在,如果结合从Enumerable继承的其他方法,这真的很发光,所以有可能有更好的选择,你的命令式每个循环.假设您要过滤提取的切片,然后进行变换:

a = [0,1,2,3,4,5,6,7]
a.drop(3).select(&:even?).map { |x| x * 2 }
# => [8,12]

或者说要打印所有值的列表:

a = ["1","2","3","4","5"]
puts a.drop(3).join("\n")

输出

4
5

这些继承自功能编程功能功能使Ruby如此强大:)

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...