[b]方法呼叫[/b]
方法呼叫由四部分組成:
乙個任意的表示式,它的值就是將要在其上呼叫該方法的物件 。 .或::
被呼叫的方法名稱
將要傳遞給該方法的引數值。引數列表可以置於一對圓括號中,可選
乙個可選的**塊, 位於一對花括號或乙個do/end中。
puts "hello world"
math.sqrt(2) #
message.length
a.each
message.length方法
呼叫的時候
message.length
省略括號 更像是乙個引用。
屬性訪問方法
屬性可變方法
message.length=(3) #傳統方法呼叫
message.length=3
變數a 持有乙個陣列
a[0] #陣列元素。這是乙個方法呼叫 ruby直譯器將對陣列的訪問轉換成下面的形式
a(0)
任何物件都可以定義乙個方法。
當方括號中「索引」該物件時,任何位於方括號中的值都會被作為實參傳遞給方法。
物件o 定義了乙個名為=的方法
o[x]=y 變成 o.=(x,y)
o[x,y]=z 變成 o.=(x,y,z)
許多ruby操作都被定義成方法
x+y x.+(y)
+就是方法名
最簡單的
x如果存在x的變數,那麼這就是乙個變數引用表示式
不存在,那麼它就被當成self物件上的,對方法x的一次不帶實參的呼叫
ruby的關鍵字super是乙個特殊的方法呼叫表示式,在建立乙個子類時會用到這個關鍵字。
2011-4-10 15:06 danny
娃娃鴨學Ruby 注釋
1 注釋 注釋以 字元開頭並持續到該行結束 如果 字元出現在乙個字串或正規表示式字面量裡,那麼它將作為此字串或正規表示式的一部分而非引入一段注釋。this entire line is a comment x this is a string y this is a regular expressi...
娃娃鴨學Ruby 25 If
if if 是最簡單的條件式,具有多種形式 if expression code end expression的值不是false或nil執行 可以有關鍵字 then if x 10 x 1 endif x 10 then x 1 end if x 10 then x 1 end1 else if e...
娃娃鴨學Ruby 13 陣列
b 陣列 b 乙個陣列就是一系列的值,可以通過這些值在該序列中的位置或索引來訪問它們。ruby中 陣列的第乙個值的索引為0 size和length方法返回乙個陣列的元素個數,最後乙個元素的索引是size 1 負索引從陣列的末尾開始計數 1 表示陣列的最後乙個元素,倒數第二個為 2 越界 返回nil,...