在Ruby中,可以通過(guò)以下幾種方式來(lái)改進(jìn)方法參數(shù):
def my_method(name: "John", age: 30)
puts "Name: #{name}, Age: #{age}"
end
my_method(name: "Alice", age: 25)
def my_method(name, age=30)
puts "Name: #{name}, Age: #{age}"
end
my_method("John") # 使用默認(rèn)年齡值
my_method("Alice", 25) # 提供自定義年齡值
def my_method(name, age)
raise ArgumentError, "Name must be a string" unless name.is_a?(String)
raise ArgumentError, "Age must be a positive integer" unless age.is_a?(Integer) && age > 0
puts "Name: #{name}, Age: #{age}"
end
my_method("John", 30)
ruby2d
或rspec-types
)來(lái)捕獲類型錯(cuò)誤。例如:def my_method(name: String, age: Integer)
puts "Name: #{name}, Age: #{age}"
end
my_method(name: "John", age: 30)
通過(guò)這些改進(jìn),可以使Ruby方法參數(shù)更加靈活、可讀和健壯。