valores una matriz matrices ingresar imprimir dinamica como arreglos arreglo 3x3 java arrays text numbers

una - Matrices de Java que imprimen números extraños y texto



matriz 3x3 java (10)

Esta pregunta ya tiene una respuesta aquí:

Soy nuevo en la programación. Estoy seguro de que la respuesta a esta pregunta está disponible, pero no tengo idea de qué buscar.

entonces um. ok, iré directo a eso.

Aquí está mi código:

int[] arr; arr = new int[5]; arr[0] = 20; arr[1] = 50; arr[2] = 40; arr[3] = 60; arr[4] = 100; System.out.println(arr); } }

Compila y funciona bien. Es solo el resultado de CMD lo que me marea.

Este es el resultado: [I@3e25a5

Quiero que representen exactamente los mismos números de la lista (arr). ¿Cómo hago que eso suceda?



Cada objeto tiene un método toString (), y el método predeterminado es mostrar la representación del nombre de clase del objeto, luego "@" seguido de su código hash. Entonces, lo que está viendo es la representación por defecto de String () de una matriz int. Para imprimir los datos en la matriz, puede usar

System.out.println(java.util.Arrays.toString(arr));

O puede recorrer el conjunto con un ciclo for como lo han publicado otros en este hilo.


Es la representación de cadena predeterminada de la matriz (el texto extraño).

Tendrás que recorrerlo:

for(int i : arr){ System.out.println(i); }


Imprime su método .toString (), debe imprimir cada elemento

for(int i=0; i<arr.length; i++) { System.out.println(arr[i]); } or for(Integer i : arr) { System.out.println(i); }


Imprimiste la referencia y no los valores en la referencia ... Un día todo se aclarará con C.


Me gusta esto:

for (int i = 0; i < arr.length; ++i) { System.out.println(arr[i]); }

Ese "número raro" es la referencia para la matriz que imprimió. Es el comportamiento predeterminado integrado en el método java.lang.Object toString ().

Debería anularlo en sus propios objetos si ver la referencia no es suficiente.


Para imprimir los valores use.

for(int i=0; i<arr.length; i++) System.out.println(arr[i]);


Por cierto, puedes escribir

int[] arr = { 20, 40, 60, 40, 60, 100 }; System.out.println(Arrays.toString(array));

o incluso

System.out.println(Arrays.toString(new int[] { 20, 40, 60, 40, 60, 100 }));

o

System.out.println(Arrays.asList(20, 40, 60, 40, 60, 100));


for (int i = 0; i < arr.length; ++i) { System.out.println(arr[i]); }


System.out.println(Arrays.toString(arr));

La salida actual es classtype@hashcode .

En caso de que necesite imprimir matrices con más de una dimensión, use:

Arrays.deepToString(arr);

Recuerde también anular el método toString() para las clases definidas por el usuario para que pueda obtener una representación del objeto como usted elija y no la representación predeterminada que es classtype@hashcode