Ruby 代码块:迭代与执行环绕的艺术
1. 代码块作为迭代器
代码块在 Ruby 中是非常强大的工具,其中一个重要应用就是作为迭代器。迭代器的核心功能是遍历集合中的每个元素,并对每个元素执行特定的操作。
1.1 简单迭代器示例
我们可以通过一个简单的方法来打印代码块返回的值:
def print_the_value_returned_by_the_block
if block_given?
value = yield
puts "The block returned #{value}"
end
end
print_the_value_returned_by_the_block { 3.14159 / 4.0 }
执行上述代码,你会看到输出结果为 The block returned 0.7853975 。
1.2 自定义迭代器
在 Document 类中,我们可以添加一个迭代器方法 each_word ,用于遍历文档中的每个单词:
class Document
# Stuff omitted...
def each_word
word_array = words
index = 0
while index < words.size
yield( word_array[index
超级会员免费看
订阅专栏 解锁全文
1

被折叠的 条评论
为什么被折叠?



