如何在while循环中连接字符串?

Sir*_*lot 0 ruby

我想在循环中读取一些行并连接它们:

d = ""
while s = gets do
  d = d.concat(s)
end
puts d
Run Code Online (Sandbox Code Playgroud)

CNTRL+ Z(在Windows上)取消循环后,输出就是我在循环中读取的最后一个字符串.我也尝试过+,<<但结果相同.

Luc*_*cas 5

您可以通过以下两种方式完成此操作:

d = ""
while s = gets do
  d << s
end
puts d
Run Code Online (Sandbox Code Playgroud)

编辑:Marc-AndréLafortune注意到使用+=并不是一个好主意,所以我只留下<<方法.