ruby做為物件導向語言,肯定要對物件進行相關的操作,這時候就涉及到方法了。
呼叫方法 - 物件.方法名(實參1,實參2,...,實參n)
方法的分類:
1. 例項方法:顧名思義lihvgzmgr,就是由例項來呼叫的方法。例如,「10, 20, 30, 40」lihvgzmgr.split(",")
2. 類方法:就程式設計客棧是由類來呼叫的方法。當建立乙個例項時,則需要呼叫類方法。
複製** **如下:
a = array.new #建立乙個新陣列
file.rename(oldname, newname) #更改檔名
呼叫類方法時,可以使用".",也可以使用"::"
3. 函式方法:直接省略呼叫者的方法。例如,sin(3.14),sleep(100), print("hello!")
定義方法:
複製** **如下:
=begin
語法:def 方法名(引數1,引數2,。。。)
想要執行的動作
end=end
def hello(name)
print("hello, ", name, ".\n")
endhello("ruby") # =>hello, ruby.
#可以為引數指定預設值
def hello(name="ruby")
print("hello, ", name, ".\n")
endhello() # =>hello, ruby.
h程式設計客棧ello("newbie") # =>hello, newbie.
#當方法中不止乙個引數時,預設值必須從右端的引數開始指定
def func(a, b=1, c=2) # 有兩個引數可以省略,則應設計成右邊2個可以省略
.....
end方法的返回值
和j**a語言類似,可以使用return來指定返回值。在方法中可以直接使用return語句來返回方法結果。
複製** **如下:
def volume(x,y,z)
return x*y*z
endp volumne(2,3,4) # => 24
在ruby語言中,return語句也可以省略,這時,方法中最後乙個語句的計算值會是返回值。
複製** **如下:
def area(x, y, z)
&nwww.cppcns.combsp; xy = x*y
yz = y*z
xz = x*z
(xy + yz + xz)*2
endp area(2, 3, 4) # => 52
如果存在if...else等邏輯結構時候,省略了return,則不一定是最後乙個語句的計算值作為返回值,而是要根據當前的邏輯結構看那條語句執行。
想要在某些情況下,直接跳出方法,則可以在加上return語句。
note:若省略return後面的實參,則會返回nil (相當於j**a中的null.)
本文標題: ruby簡明教程之方法(method)介紹
本文位址:
python簡明教程之函式
函式 函式是指可重複使用的程式片段。它們允許你為某個 塊賦予名字,允許你通過這一特殊的名字在你的程式任何地方來執行 塊,並可重複任何次數,這就是所謂的呼叫 calling 函式。我們已經使用了很多內建的函式,例如 len 和 range。案例 儲存為function1.py def say hell...
Vbs指令碼程式設計簡明教程之五
錯誤處理 引發錯誤的原因有很多,例如使用者輸入了錯誤型別的值,或者指令碼找不到必需的檔案 目錄或者驅動器,我們可以使用迴圈技術來處理錯誤,但是vbs本身也提供了一些基本技術來進行錯誤的檢測和處理。1 最常見的錯誤是執行時錯誤,也就是說錯誤在指令碼正在執行的時候發生,是指令碼試圖進行非法操作的結果。例...
Vbs指令碼程式設計簡明教程之七
fso的常見物件和方法 檔案系統是所有作業系統最重要的部分之一,指令碼經常會需要對檔案及資料夾進行訪問和管理,在vbs中對桌面和檔案系統進行訪問的頂級物件是filesystemobject fso 這個物件特別複雜,是vbs進行檔案操作的核心。此節內容應瞭如指掌。fso包含的常見物件有 drive物...