4

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}

上記のコードの何が問題になっていますか?私はこの方法について検索しましたが、すべてのサイトで正しい構文であると言われていますが、うまくいかないようです。

編集:これについて議論している別のスレッドに気づきました。答えは一重引用符をエスケープすることでした。ただし、元のコードでは文字列に一重引用符が含まれていません

4

1 に答える 1

3

MessageFormatクラスを使用したいlog.info(MessageFormat.format("message{0}",string)) 文字列は"{0}"を置き換えます。

于 2012-06-12T04:22:43.193 に答える