|
管理博客 ┆ 搜索 ┆ 帮助 |
| 标签: | ||||
1. capitalize方法
该方法是字符串类String的一个方法,对所有字符串都适用。它的作用是将调用该方法的字符串的首字母改为大写。举例如下:
s = “ruby”
s.capitalize → “Ruby”
又如:
def say_goodnight(name)
result = "Good night, #{name.capitalize}"
#capitalize将参数name所代表的字符串的首字母改为大写
return result #其实这条语句是多余的,因为一个方法如果没有指定返回值,则默认返回最后一个表达式的值
end
puts say_goodnight("mum")
输出结果:
Good night,Mum
2. each方法
each方法经常与block一起使用,它的最大好处能够在某冲情况下取代for循环的功能。each方法会将调用它的对象中的所有元素依次赋给与each方法相关联的block的变量。
例如:
(‘a’..’e’).each {|char| print char} → abcde #range中两点表示全闭区间,三点表示前闭后开
在上面的例子中,range对象(‘a’..’e’)调用each方法,each方法将(‘a’..’e’)对象的每个值依次赋给block {|char| print char}中的char变量。
再来看下面这个例子:
file = File.open(“filename”)#打开名称为filename的文件,并将其内容写入到file中
file.each {|line|
puts line
}
file.close #文件打开后必须关闭
输出结果:
this is line one
this is line two
this is line three
and so on……
3. times方法
调用times方法的一般是具体的数字(整数)对象,times会按照对象的要求来指定其后block的执行次数。该方法是整数支持的集中常用的迭代器之一。
例如:
5.time { print “*” }
输出结果:
*****