&. 操作符作用: 起到空指针保护的作用,和 Rails ActiveSupport 引入的方法try作用相似
例如 一个user 有一个address,如果你想使用这个address代码如下
第一种写法
if user && user.address## some code end首先,先判断这个user不能为nil, 然后再判断 address 不能为nil,同时不为nil 的时候你才能操作这个address
使用ActiveSupport的try
if user.try(:address) ## some code end
使用&.
if user&.address ## some code end
如上我们看到 &.用法更简洁
备注:
第一种和使用&.的结果是一样的。
和try的不同:
try不会去判断对象上是否能响应方法,如果不能最终返回的结果是nil,
&.则会检查对象是否能响应方法
更多信息可以看这里
作者:就叫初九吧
链接:https://www.jianshu.com/p/8b651079e76b
點(diǎn)擊查看更多內(nèi)容
為 TA 點(diǎn)贊
評(píng)論
評(píng)論
共同學(xué)習(xí),寫下你的評(píng)論
評(píng)論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦