texto justificar espacio ejemplo centrar alinear java string alignment string.format

java - justificar - ¿Cómo puedo alinear a la izquierda las cadenas usando String.format()?



printf java (2)

¿Me gusta esto?

class F { public static void main( String ... args ) { String [] status = { "EXECUTING", "READY-SUSPENDED", "CREATED" }; int [] pids = {123, 34, 1231 }; int i = 0; for( String s : status ) { System.out.printf("Process PID: %5d Status : %s%n", pids[i++], s); } } }

Salida:

$java F Process PID: 123 Status : EXECUTING Process PID: 34 Status : READY-SUSPENDED Process PID: 1231 Status : CREATED

Estoy usando String.format () en Java tratando de emular el canal de control printf () disponible en C. Entiendo cómo especificar que una cadena debe colocarse en un campo que toma 20 caracteres, 5, 2 ... con 3 decimales, 2, etc. Sin embargo, las cadenas se imprimen a la derecha en su campo.

¿Cómo alineo a la izquierda las cuerdas?

Aquí hay un ejemplo de un posible resultado que me gustaría modificar para alinear a la izquierda EXECUTING y CREATED en sus campos.

Process PID: 25 Status: ----------- EXECUTING Process PID: 36 Status: READY-SUSPENDED Process PID: 4 Status: ---------------- CREATED

* nota: considere ''-'' como un espacio vacío


Igual que con printf: use un modificador en el formato