Imprimir tabla en Java

Imprimir tabla en Java - Coding N Concepts

En este tutorial, aprenderemos a imprimir los elementos de un determinado Array en Java.

Índice
  1. La manera más fácil
    1. Arrays.toString() para una matriz simple
    2. Arrays.deepToString() para matriz anidada
  2. Otras maneras

La manera más fácil

EL Arrays.toString() Y Arrays.deepToString() Los métodos son la forma más fácil de imprimir matrices en Java y funcionan bien para todo tipo de matrices, es decir, int, double, byte, String, etc.

Ejemplos rápidos
Arrays.toString(new int[]{1, 2, 3})
Arrays.deepToString(new int[][]{{1, 2}, {3, 4}, {5, 6}})
Arrays.deepToString(new int[][][]{{{1}, {2}, {3}}, {{4}, {5}}, {{6}}})

 

Arrays.toString() para una matriz simple

EL Arrays.toString() es la forma más fácil de imprimir elementos de matriz en una sola fila en Java: -

String[] strArray = new String[] {"John", "Mary", "Bob"};
System.out.println(Arrays.toString(strArray));
// prints [John, Mary, Bob]

 

Limitación de Array.toString()

EL Arrays.toString() el método funciona bien con Array simple pero imprime ClassName; + @ + hashCode para matrices anidadas como esta: -

String[][] nestedArray = new String[][] {{"John", "Mary"}, {"Alice", "Bob"}};
System.out.println(Arrays.toString(nestedArray));
// prints something like [[Ljava.lang.String;@566776ad, [Ljava.lang.String;@6108b2d7]

¡Nada de que preocuparse! Nosotros tenemos Arrays.deepToString() al rescate.

 

Arrays.deepToString() para matriz anidada

EL Arrays.deepToString() se puede usar para imprimir todos los elementos anidados de una matriz multidimensional en una sola línea en Java: -

String[][] nestedArray = new String[][] {{"John", "Mary"}, {"Alice", "Bob"}};
System.out.println(Arrays.deepToString(nestedArray));
// prints [[John, Mary], [Alice, Bob]]

String[][][] deepNestedArray = new String[][][] {{{"John"}, {"Mary"}, {"Alice"}}, {{"Bob"}, {"Adam"}}, {{"Emily"}}};
System.out.println(Arrays.deepToString(deepNestedArray));
// prints [[[John], [Mary], [Alice]], [[Bob], [Adam]], [[Emily]]]

Otras maneras

Hay muchas otras formas de imprimir una matriz en Java: -

  1. Usar Arrays.toString() Y Arrays.deepToString() métodos para convertir una matriz en una cadena separada por comas e imprimir.
  2. Usar Arrays.asList() Y List.of() métodos para convertir una matriz en una lista y usar sus valores predefinidos toString() método para imprimir elementos en una cadena separada por comas.
  3. Usar String.join() para unir los elementos de un String Array por cualquier delimitador de su elección e imprimir en una sola línea.
  4. Usar Fuentes de Java para mapear elementos de un Array a String, unir por cualquier delimitador de su elección e imprimir en una sola línea.
  5. Usar para cada bucle para recorrer los elementos de una matriz e imprimir cada elemento en una nueva línea.

Veamos los ejemplos: -

// Primitive int
int[] ints = new int[] {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(ints));
System.out.println(IntStream.of(ints).mapToObj(Integer::toString).collect(Collectors.joining(", ")));
System.out.println(IntStream.of(ints).boxed().map(Object::toString).collect(Collectors.joining(", ")));
IntStream.of(ints).forEach(System.out::println);
Arrays.stream(ints).forEach(System.out::println);

// Object String
String[] strs = new String[] {"John", "Mary", "Bob"};
System.out.println(Arrays.toString(strs));
System.out.println(Arrays.asList(strs));
System.out.println(List.of(strs));
System.out.println(String.join(", ", strs));
System.out.println(Stream.of(strs).collect(Collectors.joining(", ")));
Stream.of(strs).forEach(System.out::println);
Arrays.stream(strs).forEach(System.out::println);
Arrays.asList(strs).forEach(System.out::println);
List.of(strs).forEach(System.out::println);

// Object Enum 
DayOfWeek [] days = { FRIDAY, MONDAY, TUESDAY };
System.out.println(Arrays.toString(days));
System.out.println(Arrays.asList(days));
System.out.println(Stream.of(days).map(Object::toString).collect(Collectors.joining(", ")));
System.out.println(Arrays.toString(days));
Stream.of(days).forEach(System.out::println);
Arrays.stream(days).forEach(System.out::println);
Arrays.asList(days).forEach(System.out::println);
List.of(days).forEach(System.out::println);

Si quieres conocer otros artículos parecidos a Imprimir tabla en Java puedes visitar la categoría Tutoriales.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Esta página web utiliza cookies para analizar de forma anónima y estadística el uso que haces de la web, mejorar los contenidos y tu experiencia de navegación. Para más información accede a la Política de Cookies . Ver mas