在Ruby中,方法是一種與對象關聯的函數。要定義一個方法,您可以使用def
關鍵字,后跟方法名、參數列表(如果有的話)和方法體。以下是一些關于Ruby方法定義的基本信息:
def
關鍵字定義方法。方法名通常遵循駝峰命名法(camelCase)。def my_method(arg1, arg2)
# 方法體
end
# 必需參數
def my_method(arg1, arg2)
# 方法體
end
# 可選參數
def my_method(arg1, arg2 = "default_value")
# 方法體
end
# 參數數組
def my_method(*args)
# 方法體
end
# 參數哈希
def my_method(**kwargs)
# 方法體
end
def
和end
之間的一組語句。這些語句可以包括變量聲明、控制結構(如循環和條件語句)以及其他方法調用。def my_method(arg1, arg2)
result = arg1 + arg2
puts result
end
return
關鍵字。如果沒有return
語句,方法將返回最后一個表達式的值。def my_method(arg1, arg2)
result = arg1 * arg2
return result
end
*args
和**kwargs
來接收可變數量的參數。*args
用于接收任意數量的位置參數,而**kwargs
用于接收任意數量的關鍵字參數。def my_method(*args)
puts "Received arguments: #{args.inspect}"
end
def my_method(**kwargs)
puts "Received keyword arguments: #{kwargs.inspect}"
end
class MyClass
def my_method(arg1, arg2)
result = arg1 + arg2
puts result
end
end
my_object = MyClass.new
my_object.my_method(1, 2) # 輸出 "Received arguments: [1, 2]"