Когда мы используем рубин, нам очень удобно использовать «путы». Но, поскольку это код печати по умолчанию, используемый всеми, у него также есть некоторые недостатки.

Если вы написали два оператора put один за другим, он обычно печатается в следующей строке, потому что по умолчанию в функции puts есть «\n».

puts “Hello”
puts “World”

Дает тебе

Hello
World

Но что, если вы хотите, чтобы это было так.

Hello World

Я знаю, некоторые из вас будут думать, что мы можем просто сделать это.

puts "Hello World"

И, несомненно, вы абсолютно правы. Вот в чем загвоздка, здесь это работает, но как вы сделаете то же самое, если вы находитесь в цикле и после каждой итерации не хотите переходить на следующую строку.

В этом случае для нашего оставшегося в живых возникает отпечаток.

Используйте print вместо put и STDOUT.flush, за которым следует его.

Puts дает вам это

"HelloWorld".split("").each do |i|
   puts i
end
H
e
l
l
o
W
o
r
l
d

Печать дает вам это

"HelloWorld".split("").each do |i|
    print i
    STDOUT.flush
end
HelloWorld