Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/03/2011, 15:42
jair_alberto
 
Fecha de Ingreso: marzo-2011
Mensajes: 5
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Alinear una matriz

Cita:
Iniciado por Crackoder Ver Mensaje
Supongo que la matriz la matriz la estas imprimiendo en consola, y si es asi, no hay un metodo para alinearlos automaticamente.

Pero podrias obligar a que los datos estuvieran mejor acomodados si haces un metodo que rellene con espacios en blanco las cadenas mas pequeñas al momento de imprimirlas indicandole tu un tamaño minimo

Ejemplo:
Código Java:
Ver original
  1. public String agregarEspacios(String cadena, int longitud){
  2.      int diferencia = longitud - cadena;
  3.      for(int i =0;i<diferencia;i++){
  4.          cadena = " "+cadena;
  5.      }
  6.      return cadena;
  7. }



si por ejemplo le envio la cadena "x" y como longitud 3 el metodo me devolvera " x" (con 2 espacios delante) y cuando imprimas este no desalineara la cuadricula amenos que halla un numero cuya longitud sea mayor a 3 (en este caso), lo que debes hacer es primero buscar cual es la cadena mas larga y usar su longitud para alinear las demas.

Espero haberte ayudado,
Saludos... :)

Hola Crackoder, muchas gracias por tomarte el tiempo de ayudarme pero afortunadamente ya lo pude resolver :D ... para serte sincero no entendí del todo tu idea, pero creo que es parecida.
Así lo solucioné:
Código Java:
Ver original
  1. for (String[] x : lab) {
  2.             System.out.print("\t");
  3.             for (String y : x) {
  4.                 if (y.length() == 1) {
  5.                     System.out.print(y + "  ");
  6.                 } else {
  7.                     System.out.print(y + " ");
  8.                 }
  9.             }
  10.             System.out.println();
  11.         }