Alinear cadena a la izquierda

01/Nov/2009 Java , , 2 Comentarios

Seguimos con los ejemplos de transformación de cadenas y después de ver cómo añadir ceros a la izquierda, ahora veremos como podemos alinear una cadena a la izquierda.

Para ello vamos a volver a utilizar la clase Formatter y el método format(). Aunque podríamos utilizar el método format directamente sobre la clase String. Veremos el ejemplo de las dos formas, ya que lo importante es el patrón de formato a aplicar.

Con la clase Formatter, lo primero será instanciarla.

  1. Formatter fmt = new Formatter();

Lo siguiente ya será aplicar el formato:

  1. Formatter fmt = new Formatter();
  2. fmt = fmt.format("Contenido %-8d unidades", number);

El formato para alinear la cadena a la izquierda lo conseguiremos mediante el flag '-'. Si recordamos el formato de la cadena de conversión sería el primer valor tras el del argumento.

%[argument_index$][flags][width]conversion

Para ver la justificación le damos un tamaño de 8 posiciones y el tipo de conversión será el 'd' para los números enteros. El código sería el siguiente:

  1. int number = 4752;
  2. Formatter fmt = new Formatter();
  3. fmt = fmt.format("Contenido %-8d unidades", number);
  4. System.out.println(fmt.toString());

Si queremos hacer esto directamente, sin la clase Formatter, sería utilizar el método format de la siguiente forma:

  1. String formateado = String.format("Contenido %-8d unidades", number);
  2. System.out.println(formateado);

Vídeos sobre Java Util


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

2 comentarios en “Alinear cadena a la izquierda”

Víctor Cuervo

lineadecodigo

@Jorge Wander,

En primer lugar gracias por los agradecimientos. En nuestro ánimo está el poder ayudar a la gente con explicaciones claras y sencillas.

Lo que estás haciendo con esta sentencia es componer una frase, en la cual %-8d es el parámetro a sustituir por el valor de number.

Tu puedes poner la frase que más te guste:

fmt = fmt.format(”La gallina puso %-8d huevos”, number);
fmt = fmt.format(”Podemos quedar a las  %-8d”, number);

O directamente sin frase:

fmt = fmt.format(”%-8d”, number);

Espero que te sirva la explicación

Víctor Cuervo

Jorge Wander

saludos a todos, su pagina es una de las mejores de las que me e encontrado por su forma de explicar las cosas, y por lo sencilla y amigable que es. de verda que si.

bueno. tengo una duda, y es respecto a la siguiente linea de codigo

fmt = fmt.format(“Contenido %-8d unidades”, number);

para que se da como parametro -> “Contenido %-8d unidades”

es decir, no entiendo, primero la cadena Contenido, para que la uso y por que? hay otras cadenas en ves de Contenido que puedo usar en su lugar?. y esta el %-8d, que es lo que hace esto realmente? (paso a paso), y luego esta “unidades”, se puede colocar otra cosa?

gracias de antemano.

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*