我的方法:
def scroll_images
images_all[1..images_all.length]
end
我不喜欢我正在调用images_all
两次,只是想知道是否有一个很好的技巧来调用self
或类似的东西来使它更清洁。
答案 0 :(得分:12)
您可以使用Array#drop
方法以更清晰的方式获得相同的结果:
a = [1, 2, 3, 4]
a.drop(1)
# => [2, 3, 4]
答案 1 :(得分:11)
使用-1
代替长度:
def scroll_images
images_all[1..-1] # `-1`: the last element, `1..-1`: The second to the last.
end
示例:
a = [1, 2, 3, 4]
a[1..-1]
# => [2, 3, 4]
答案 2 :(得分:1)
如果您实际修改了images_all
的值,即明确删除第一个元素,请使用shift
:
images_all.shift
答案 3 :(得分:1)
以下是使用Array#values_at
的另一种方法: -
a = [1, 2, 3, 4]
a.values_at(1..-1) # => [2, 3, 4]