- Invoking a Method on An Object
first = text.index(pattern)
这段代码把pattern变量传递给index方法,index方法属于一个存储在text变量中的对象,返回值被存储到变量first中。
- 单键方法
o = "message" # 在字符串对象上定义它独有的方法
def o.printme
puts self
end
o.printme
Math.sin, File.delete这样的类方法,实际上是单键方法。
Math是一个常量,它引用一个moduel对象,File则引用一个class对象。这两个对象分别有名为sin和delete的单键方法。
- 可变长度参数列表
要接受可变长度参数列表,需要在某个参数前加上一个*符
def max(first, *rest)
max = first
rest..each {|x| max = x if x > max }
max
end
在Ruby中,所有Enumerable对象自动具有max方法