Ruby有一个select
方法,该方法采用一个数组并返回一个子阵列由全部通过在一个块中给出的测试中的元件中的:红宝石:选择一组阵列索引,其元素通过测试
myarray.select{|e| mytest(e)} #=> subarray of elements passing mytest
我想知道是否有一个简单的方法来获取这些元素,但他们的指数。我明白你可以这样做:
indices = []
myarray.each_with_index{|e,i| indices << i if mytest(e)}
但我正在寻找一个班轮。有一个存在吗?请不要给Array类写一个扩展名,我知道你可以用这种方式获得一行代码。
这是一个简单的国王。不敢相信我没有想到这个!做得好。 –