我有这个代码:

def rectangle
  "|------------------|\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|                  |\n" +
  "|------------------|\n"
  end

我想重构它。但是出于某种原因,如果我尝试以任何其他方式连接/合并字符串,"\n" 将停止工作,并且它会在一行中返回。
def rectangle
    a = "|------------------|\n"
    b = "|                  |\n"
    a + b + a
end

我尝试使用
System.getProperty("line.separator", "\n")

正如类似帖子中所建议的那样,但这没有帮助(或者我做得不对)。这是我类(class)的一部分。感觉就像我错过了一些明显的东西。

最佳答案

一个简单的例子是:

def rectangle
  a = "|#{'-' * 10}|"
  b = "|#{' ' * 10}|"
  ([a] + [b] * 5 + [a]).join("\n")
end

puts rectangle

关于Ruby:在一行中返回带有 "\n"的字符串连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40476872/

10-13 01:26