您的位置:首页 > 编程语言 > Ruby

ruby-each方法

2019-09-03 21:21 1781 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/fd2015/article/details/100527794
each方法的想法很简单,在集合的对象上运行each方法,它把集合中的元素逐个的取出传递给代码块。ruby有许多集合类,甚至很像集合的类也都支持each方法。使用简单数组
array=[1,2,3,4,5]
array.each{|e| puts "the shuzu #{e}"}
==>[1,2,3,4,5]
最后一行不是方法的输出结果,它是由irb响应的each方法的返回值。一旦指定了一个代码块,each方法的返回值就是它的接收者:原始数组。
下面自己实现一个my_each方法,会迭代N次,它迭代的次数即方法执行yied语句的次数,依赖于数组的大小,还需要使用一个计数器在方法结束前追踪当前数组索引的位置,并追踪yied子句的执行。数组有一个size方法,使用它可以很容易判断有多少次迭代需要执行。

class    Array
def  my_each
c=0
until c==size
yield(self[c])
c+=1
end
end
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: