The special methods for Ruby -> &(:) and &.
&:
&: 將一組陣列中的元素轉換成字串
1 | cats = [1, 2, 3, 4] |
當使用:
1 | cats.map do |x| x.to_s end |
會得到:
1 | ["1", "2", "3", "4"] |
&.
1 | a &. b |
如果 a 是 nil,就不會再繼續執行 b,以防造成 nil.b,undefined method b for nil class
1 | a = [] |
加入&.會判斷receiver如果是nil,就不會執行puts。
1 | @candidate&.create |
如果 @candidate為nil,就不會執行create方法,如此便不會出現undefined method `[]’ for nil:NilClass的錯誤訊息。