- Ruby基础知识
- Ruby - 主页
- Ruby - 概述
- Ruby - 环境设置
- Ruby - 语法
- Ruby - 类和对象
- Ruby - 变量
- Ruby - 运算符
- Ruby - 评论
- Ruby - IF...ELSE
- Ruby - 循环
- Ruby - 方法
- Ruby - 块
- Ruby - 模块
- Ruby - 字符串
- Ruby - 数组
- Ruby - 哈希
- Ruby - 日期和时间
- Ruby - 范围
- Ruby - 迭代器
- Ruby - 文件 I/O
- Ruby - 例外
Ruby - 迭代器
迭代器只不过是集合支持的方法。存储一组数据成员的对象称为集合。在 Ruby 中,数组和哈希可以称为集合。
迭代器一个接一个地返回集合中的所有元素。我们将在这里讨论两个迭代器,each和collect。让我们详细看看这些。
Ruby 每个迭代器
Each 迭代器返回数组或哈希的所有元素。
句法
collection.each do |variable| code end
为集合中的每个元素执行代码。这里,集合可以是数组或 ruby 散列。
例子
#!/usr/bin/ruby ary = [1,2,3,4,5] ary.each do |i| puts i end
这将产生以下结果 -
1 2 3 4 5
您始终将每个迭代器与一个块相关联。它将数组的每个值一一返回到块。该值存储在变量i中,然后显示在屏幕上。
Ruby 收集迭代器
收集迭代器返回集合的所有元素。
句法
collection = collection.collect
收集方法不必总是与块相关联。collect方法返回整个集合,无论它是数组还是哈希。
例子
#!/usr/bin/ruby a = [1,2,3,4,5] b = Array.new b = a.collect puts b
这将产生以下结果 -
1 2 3 4 5
注意:collect方法不是在数组之间进行复制的正确方法。还有另一种方法称为克隆,它应该用于将一个数组复制到另一个数组中。
当您想要对每个值执行某些操作以获取新数组时,通常会使用收集方法。例如,此代码生成一个数组b ,其中包含a中每个值的 10 倍。
#!/usr/bin/ruby a = [1,2,3,4,5] b = a.collect{|x| 10*x} puts b
这将产生以下结果 -
10 20 30 40 50