我想知道是否可以創建一個方法,比如Array#square
(它將數組中的元素放在正方形中),允許使用可選的爆炸!
標識符?創建允許爆炸和非爆炸選項的方法
這樣,接收器是否被永久修改只取決於是否用爆炸來調用該方法。例如,是否可以定義一個方法:
class Array
def square(!)
#code
end
end
或者,是否有必要創建兩個這樣的方法?
class Array
def square
#code
end
def square!
#code
end
end
您的例子並不反映任何意義。 #sum不會修改數組。因此#sum!是毫無意義的。 – 2014-10-10 16:14:54
您必須創建兩種方法。 '!'是方法名稱的一部分,不能是參數。 – 2014-10-10 16:26:23
我爲這個不好的例子道歉。將數組中的元素平方作爲例子會是更好的選擇。我會嘗試編輯帖子。謝謝。 – xmdperezx 2014-10-10 16:41:51