如何使用枚举器

  发布于 2023-02-12 18:08

在Ruby Array类文档中,我经常发现:

如果没有给出块,则返回枚举器.

为什么我不通过一个块#map?我的做法是什么:

[1,2,3,4].map

而不是做:

[1,2,3,4].map{ |e| e * 10 } # => [10, 20, 30, 40]

有人能告诉我一个使用这个枚举器的非常实用的例子吗?

1 个回答
  • 好问题.

    如果我们想要使用创建的枚举器做多个事情怎么办?我们现在不想处理它,因为这意味着我们可能需要稍后创建另一个?

    my_enum = %w[now is the time for all good elves to get to work].map # => #<Enumerator: ["now", "is", "the", "time", "for", "all", "good", "elves", "to", "get", "to", "work"]:map>
    
    my_enum.each(&:upcase) # => ["NOW", "IS", "THE", "TIME", "FOR", "ALL", "GOOD", "ELVES", "TO", "GET", "TO", "WORK"]
    my_enum.each(&:capitalize) # => ["Now", "Is", "The", "Time", "For", "All", "Good", "Elves", "To", "Get", "To", "Work"]
    

    2023-02-12 18:09 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有