Puede pasar un Locale adicional a java.lang.String.format así como a java.io.PrintStream.printf (por ejemplo, System.out.printf ()):
import java.util.Locale;
public class PrintfLocales {
public static void main(String args[]) {
System.out.printf("%.2f: Default locale\n", 3.1415926535);
System.out.printf(Locale.GERMANY, "%.2f: Germany locale\n", 3.1415926535);
System.out.printf(Locale.US, "%.2f: US locale\n", 3.1415926535);
}
}
Esto da como resultado lo siguiente (en mi PC):
$ java PrintfLocales
3.14: Default locale
3,14: Germany locale
3.14: US locale
Consulte String.format en la API de Java.