我在我的程序中使用了记录器java.util.logging.Logger
。首先我写了这样的话:
logger.log(Level.INFO, "message"+str);
并且IDE告诉我可以使用消息模板来提高效率,因此IDE将上述内容更改为:
logger.log(Level.INFO, "message{0}", str);
但是当我运行程序时输出只是:
11:43:05[INFO]message{0}
上述代码有什么问题?我搜索了这个方法,每个网站都告诉我它是正确的语法,但它似乎没有用。
编辑:我注意到另一个讨论此问题的线程,答案是逃避单引号。但是,我的原始代码在字符串
中没有任何单引号答案 0 :(得分:3)
您想使用MessageFormat
班级log.info(MessageFormat.format("message{0}",string))
该字符串将替换“{0}”。