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

ruby on rails 学习笔记1(语法理解)

2014-06-13 10:48 363 查看
数组和 Range 可以响应的方法中有很多都可以跟着一个块(block)

(1..5).each { |i| puts 2
* i }

这个代码在 Range
(1..5)
上调用了
each
方法,然后又把
{ |i| puts 2*i }
这个块传递给
each
方法。
|i|
两边的竖杠在 Ruby 句法中是用来定义块变量的。只有这个方法才知道如何处理后面跟着的块。本例中,Range 的
each
方法会处理后面的块,块中有一个本地变量
i
each
会将 Range 中的各个值传进块中然后执行相应的操作。

块可以多于一行,也经常是多于一行的。本书中我们会遵照一个常用的约定,当块只有一行简单的代码时使用花括号形式;当块是一行很长的代码,或者多行时使用
do..end
形式:

(1..5).each do |number|
?>   puts 2 * number
>>   puts '--'
>> end
2

%w[a b c]                        # 再说一下,%w 可以创建元素为字符串的数组

puts (1..5).to_a.inspect    # 输出一个数组字面量形式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: