娃娃鴨學Ruby 22 方法呼叫

2021-08-31 10:06:25 字數 869 閱讀 6603

[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,...