Convertir matriz en cadena con Java

05/Ago/2015 Java , 4 Comentarios
Programación en Java

Cuando estemos manejando matrices en Java podemos volcar el contenido de la matriz de una forma sencilla por pantalla. Pero si simplemente queremos ver el contenido de la matriz podemos convertir la matriz en una cadena con Java.

Lo primero será definir nuestra matriz:

int[][] matriz = {{1,2,3},{4,5,6},{7,8,9},{10,11,12}};

Ahora para poder convertir matriz en cadena con Java podríamos pensar que nos valdrá simplemente con invocar al método .toString()

System.out.println(matriz.toString());

Y ya lo tenemos todo… Pero, espera un momento. Por pantalla me muestra lo siguiente:

[[[email protected]

Esto se nos parece poco a una matriz. Así que el método .toString() no nos sirve para convertir matriz en cadena con Java.

Lo que nos sucede aquí es algo parecido a lo que sucedía cuando comparábamos matrices mediante el método .equals(). Y aquí tenemos una solución parecida. Y es que la clase Arrays nos ofrece un método recursivo que se llama .deepToString. El método .deepToString recorrerá de forma recursiva la matriz y la convertirá en una cadena.

De esta forma tendremos que codificarlo de la siguiente manera:

System.out.println(Arrays.deepToString(matriz));

Y así obtendremos por pantalla:

[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]

Y ya habremos conseguido convertir matriz en cadena con Java de una forma sencilla.

Vídeos sobre Java


4 comentarios en “Convertir matriz en cadena con Java”

Víctor Cuervo

Fer_Gar

Hola!Utilicé el Array para convertir una matriz bidimensional a una cadena y cuando quise aplicar el método split() a la hora de correrlo me sale el siguiente error de compilación:Exception in thread «main» java.lang.ArrayIndexOutOfBoundsException: 1at Prueba.MultDeMatrices.Condición(MultDeMatrices.java:44)at Prueba.MultDeMatrices.main(MultDeMatrices.java:54)Qué me recomendaría hacer para poder aplicar el split() o algo parecido a este?

Víctor Cuervo

Víctor Cuervo

Buenas Fer,

Puedes adjuntarnos el código fuente para revisarlo???

Saludos.

Víctor Cuervo

jefferson

como se puede hacer que quede aparte cada fila

Víctor Cuervo

Víctor Cuervo

Buenas Jefferson,

¿Qué quieres decir con aparte? Visualmente a la hora de mostrarse en pantalla?

Saludos.

¿Algo que nos quieras comentar?

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

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.