• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Ruby中的迭代器简介

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

each

最简单的迭代器,它所做的就是连续访问收集的所有元素。

 [1,3,5,7,9].each { |i| puts i }

 

输出结果:

1

3

5

7

9

独特的作用就是用来实现Ruby语言的for循环。因为在Ruby内建的循环原语只有while和until。for只是一个语法块。例如:

for song in songlist
 song.play
end

 

Ruby会用each迭代器转换为:

songlist.each do |song|
 song.play
end

collect

它从收集中获得各个元素并传递给block。block会返回的结果被用来生成一个新的数组,例如:

["H", "A", "L"].collect {|x| x.succ}

 

输出结果:

["I", "B", "M"]

inject

虽然直接翻译中文,名字不好理解,但是它也是很有用的迭代器,让你可以遍历手机的所有成员以累计出一个值。例如:

[1,3,5,7].inject(0) {|sum,element| sum+element} --> 16
[1,3,5,7].inject(1) {|product,element| product*element} –> 105

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Ruby 2.0 的新功能已经冻结发布时间:2022-07-14
下一篇:
Ruby Gems(1)–简要介绍和ruby on rails安装发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap