Los caracteres de formato %d, %o, %x y %X pueden formatear datos de tipo byte, Byte, short, Short, int, Integer, long y Long, entre los cuales:
%d formatea el valor como un entero decimal.
%o formatea el valor como un entero octal.
%x formatea el valor como un entero hexadecimal en minúscula.
%X formatea el valor como un entero hexadecimal en mayúscula.
Por ejemplo:
Cadenas=String.format(%d,%o,%x,%X,300,300,300,300);
Entonces, la cadena s es 300,454,12c,12C.
Al formatear un número entero positivo, es obligatorio agregar un signo positivo, por ejemplo: %+d formatea 123 como +123.
Al formatear números enteros, agrúpelos por "miles", por ejemplo:
Strings=String.format(Agrupar por miles:%,d. Agrupar por miles con signo positivo %+,d,12345678,9876);
Luego, la cadena s se agrupa por miles: 12.345.678. Agrupados por miles con signo más +9.876.
El llamado ancho de datos es la longitud de la cadena devuelta por el método de formato . El formato general para especificar el ancho de los datos es %md , cuyo efecto es agregar espacios a la izquierda del número, si es %-md ; su efecto es agregar espacios a la derecha del número.
Por ejemplo, para formatear el número 10 en una cadena de ancho 8:
Cadenas=String.format(%8d,10);
Entonces, la cadena s es 10 y su longitud (s.length()) es 8, es decir, s agrega 6 caracteres de espacio a la izquierda de 10, para:
Cadenas=String.format(%-8d,10);
Entonces, la cadena s es 10 y su longitud (s.length()) es 8, es decir, s agrega 6 caracteres de espacio a la derecha de 10.
Nota : Si el ancho real del número es mayor que el ancho especificado en el formato, el número se formateará de acuerdo con el ancho real.
También podemos agregar un prefijo 0 delante del ancho, indicando que la parte restante en el lado izquierdo del ancho se rellenará con el número 0 sin espacios, por ejemplo:
Cadenas=String.format(%08d,12);
Entonces, la cadena s es 00000012 y su longitud (s.length()) es 8, es decir, s suma 6 dígitos 0 a la izquierda de 12.