java String.format
的嵌套格式是否可行?一个例子是;
String fooPadded = String.format("FOO:%1$10s", "foo");
// fooPadded:"FOO: foo"
String barPadded = String.format("%1$15s", fooPadded);
// barPadded:" FOO: foo"
我没有调用2个连续format
方法,这些方法在性能方面很昂贵,我希望用 bar 规则包装 foo 规则,在其他方面减少格式为单一。
答案 0 :(得分:0)
您的程序中是否存在性能问题?如果是这样,你就是想做点什么就对了。如果没有,你不应该。如果你有,String.format()
不是我的第一个嫌疑人,也不是第二个花费太长时间。在对您漂亮且可读的代码进行任何更改之前先进行测量。
那就是说,我认为限制一次拨打format()
的方法是:
String barPadded = String.format("%5s%10s", "FOO:", "foo");
我不认为你可以做嵌套,除非你的问题有两个电话。
如果"foo"
恰好是11个字符长,我的代码将不会提供与您问题中的代码完全相同的结果。