如何将字符串追加到存在或不存在的变量中?

问题描述

| 我的解决方案就像
if (not (defined?(@results).nil?))
  @results += \"run\"
else
  @results = \"run\"
end
但我相信有一些简单的事情...     

解决方法

        我可能会这样:
@results = @results.to_s + \"run\"
之所以有效,是因为
NilClass
定义了返回零长度字符串的
#to_s
方法,并且实例变量自动初始化为nil。     ,        你是对的:
(@results ||= \"\") << \"run\"
为了明确起见,
a || b
a ? a : b
,这意味着如果\7ѭ是\“ truthy \”(不是false或nil),它将尝试使用值
a
,但是如果
a
是\“ falsey \”,则使用
b
。因此,使用
||=
仅在变量为nil时更新变量。然后,
<<
附加字符串。