在字符串连接中,是否可以在语句中直接包含条件?

在下面的示例中,我只希望在"my dear"列表不为空的情况下串联dear

dear = ""

string = "hello" + " my dear" unless dear.empty? + ", good morning!"

但是结果是一个错误:未定义方法'+'为true

我知道替代方法是在此语句之前定义一个附加变量,但我想避免这种情况。

最佳答案

使用插值法而不是串联法更容易且更具可读性:

dear = ""

string = "hello#{ ' my dear' unless dear.empty? }, good morning!"

关于Ruby:如何在字符串连接中插入条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28648536/

10-13 02:30