在Ruby中,你可以使用Array()
包裝元素空數組,如果它是不是已經是一個數組:如何在Ruby中使用類似於Array()的方法(沒有點語法)?
Array(2) => [2]
Array([2, 3]) => [2, 3]
我如何定義像我自己的自定義類中的方法?像Foo()
?我在網上很難找到它,因爲我不知道這裏到底發生了什麼。
在Ruby中,你可以使用Array()
包裝元素空數組,如果它是不是已經是一個數組:如何在Ruby中使用類似於Array()的方法(沒有點語法)?
Array(2) => [2]
Array([2, 3]) => [2, 3]
我如何定義像我自己的自定義類中的方法?像Foo()
?我在網上很難找到它,因爲我不知道這裏到底發生了什麼。
Array()
是在Kernel
模塊中定義的私有方法。所以,如果您希望自定義Foo()
方法,在同樣的方式工作,你可以這樣做:
module Kernel
private
def Foo(*args)
# code
end
end
你也可以在Object
類中定義此方法,因爲Kernel
是混合到Object
,就沒有差別。
我認爲'Foo'應該是一個私有方法,如果OP想把它稱爲'數組(2)'..as'Foo(2)'...也是。作爲'Kernel.private_instance_methods.grep(/ Array /) #=> [:Array]''.. –
@ArupRakshit感謝您的建議,我相應地編輯了我的anwer。 –
'foo'會返回什麼? –
沒關係,只是想知道如何定義方法。 –
你需要在'foo'內寫入什麼行爲? –