记录myvar
的最短代码是什么,知道它可以是nil
?
希望比这更短的东西:
if (myvar==nil)
logger.debug "myvar is nil"
else
logger.debug "myvar is " + @myvar.to_s
end
答案 0 :(得分:4)
logger.debug "myvar is: " + myvar.inspect
答案 1 :(得分:1)
logger.debug "myvar is #{myvar.nil? ? 'nil' : myvar_to_s}"
在双引号内使用#{...}
告诉Ruby评估{...}
的内部,就好像它是普通的Ruby代码一样。
myvar.nil? ? 'nil' : myvar_to_s
部分首先调用nil?
上的myvar
方法。如果它返回true
,则使用字符串'nil'
。否则,使用myvar.to_s
的值。