0
我有这样的方法:如何传递参数调用Logger.info?
def test(p1, p2)
logger.info 'calling test with p1=' + p1 + ' p2 = ' + p2
end
获得铸造错误,我应该怎么来这整齐地做什么?
我有这样的方法:如何传递参数调用Logger.info?
def test(p1, p2)
logger.info 'calling test with p1=' + p1 + ' p2 = ' + p2
end
获得铸造错误,我应该怎么来这整齐地做什么?
您的投票错误可能是因为p1或p2不是字符串类型。 Ruby的字符串插补处理这个问题为您:
def test(p1, p2)
logger.info "calling test with p1=#{p1} p2=#{p2}"
end
下面是它如何工作的:红宝石上它们转换为字符串字符串(通过#{}
表示)中的任何变量调用to_s
。 Ruby中的每个对象都有这种方法,所以你不需要从那里担心它。我希望这有帮助!
更新:这是一个简单但有趣的问题,因为它不仅仅是满足眼睛(比如变形金刚)。 Ruby的这种做法实际上为您可以在自己的课程中使用的功能打开了大门。我将答案转化为博客文章,内容包括代码示例和更详细的解释: