Première solution :
La première solution consiste à définir une valeur par défaut aux paramètres facultatifs. Cette solution est semblable à celle utilisé en PHP :
def ma_methode(p1, p2 = 3)
puts p2.inspect
end
Ainsi si la méthode "ma_methode" est appelée sans le paramètre "p2", celui-ci prendra la valeur "3".
Seconde solution :
La seconde solution est surtout utile lorsque l'on ne connait le nombre de paramètre que l'on souhaite passer à notre méthode :
def ma_methode(p1, *p2)
puts p2.inspect
end
ma_methode(47, 69, 85, 75)
Dans cette méthode, le paramètre "p1" prendra la valeur de "47". Quant au paramètre "p2", il s'agit d'un simple tableau avec pour éléments "69", "85" et "75".