我在學Ruby,遇到一個問題。我可以把散列作爲方法中的第一個參數嗎?
這是我寫的代碼。
class Customer
def puts_result(name, addr)
return name, addr
end
end
aaron = Customer.new
puts aaron.puts_result "Aaron", {country: "Taiwan", city: "Tainan"}
puts aaron.puts_result "Aaron", country: "Taiwan", city: "Tainan"
puts aaron.puts_result {country: "Taiwan", city: "Tainan"}, "Aaron"
我調用puts_result方法並通過三種不同的方式傳遞參數。
在第一種方法中,我通過了大括號的散列,它工作正常。 在第二種方式中,我通過了沒有大括號的哈希,它仍然被罰款。
我的問題是在第三種方式,我通過哈希作爲第一個參數與花括號,但它會返回一個錯誤。
(REPL):15:語法錯誤,意想不到的 ':',期待 '}' 把 aaron.puts_result {國家: 「臺灣」,城市 「臺南」}, 「阿龍」 (REPL) :15:語法錯誤,意外 '' 期待 '}' 把aaron.puts_result {國家: 「臺灣」,城市: 「臺南」}, 「阿龍」
是不是有什麼我的疏忽?
我明白了!非常感謝您的解釋。 – PJCHENder