Java java.util.logging.logger。使用数组对象作为参数

时间:2013-12-23 18:27:02

标签: java logging

java.util.logging.Logger类提供了使用这种语法的能力:

int i=0;
log.log(Level.INFO,"int i = {0}", i);

这将打印出“int i = 0”。不幸的是,当我有一个更大的值,比如9093时,它将打印出“int i = 9,023”,用逗号分隔每个3位数。

问题是如何摆脱使用逗号?最好改变{}的内部。试过{0:d}和{0:%d}。两者都没有帮助。甚至可以像这样控制参数吗?或者我应该将我的int转换为字符串吗?

1 个答案:

答案 0 :(得分:4)

似乎第二个参数是MessageFormat,它支持“子格式”。尝试

log.log(Level.INFO, "int i = {0,number,#}", 1234567);

这为我删除了分组字符。

请参阅http://docs.oracle.com/javase/7/docs/api/java/text/MessageFormat.htmlhttp://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html(数字子格式被解释为DecimalFormat)。