6

在 C# 中,您可以执行以下操作:

var list = new List<int>(){1,2,3,4,5};
list.skip(2).take(2); // returns (3,4)

我正在尝试学习所有 Ruby 可枚举方法,但我没有看到 skip(n) 的等效方法

a = [1,2,3,4,5]
a.skip(2).take(2) # take exists, skip doesn't

那么,“最好的”Ruby 方法是什么?

所有这些都有效,但它们非常丑陋。

a.last(a.length - 2).take(2)
(a - a.first(2)).take(2)
a[2...a.length].take(2)
4

1 回答 1

10

使用drop. 从文档

a = [1, 2, 3, 4, 5, 0]
a.drop(3)             #=> [4, 5, 0]
于 2013-01-08T07:08:33.010 回答