:
String f = String.format("%%%d.%df", 7, 3);
System.out.println(f);
System.out.format(f, 111.1111);
çıktısı verir:
%7.3f
111,111
Ayrıca böyle küçük bir yardımcı kullanabilirsiniz:
public static String deepFormatter(String format, Object[]... args) {
String result = format;
for (int i = 0; i != args.length; ++i) {
result = String.format(result, args[i]);
}
return result;
}
Aşağıdaki çağrı, yukarıdaki kodla eşdeğer olur ve 111,111
değerini döndürür.
deepFormatter("%%%d.%df", new Object[] {7, 3}, new Object[] {111.1111});
O değil gibi güzel onunla çok daha fazlasını yapabilirsiniz printf ve darmadağın olabilir girdi biçimi, ancak.
System.out.format (...) 'ı doğrudan buradan kullanabilirsiniz – RNJ
@BelusC İkisi de vardır. Http://docs.oracle.com/javase/1.5.0/docs/api/java/io/PrintStream.html#format%28java.lang.String%%20java.lang.Object...%29 adresine bakın. – RNJ