El ejemplo de este artículo describe la operación de rotar una matriz bidimensional en Java y se comparte con todos para su referencia. El método de implementación específico es el siguiente:
Copie el código de código de la siguiente manera:
prueba de paquete;
/*
* 1 2 3 4 5
* 16 17 18 19 6
* 15 24 25 20 7
* 14 23 22 21 8
* 13 12 11 10 9
*
* Escriba un método para imprimir una matriz bidimensional de igual longitud, que requiera que los números naturales a partir de 1 se organicen en forma de espiral desde el círculo más externo de la matriz cuadrada hacia adentro.
* */
prueba de clase pública6
{
principal vacío estático público (String [] argumentos)
{
número de matriz(4);
}
// Es fácil cambiar el código. Ingrese diferentes valores de y y genere diferentes matrices bidimensionales.
número de matriz vacío estático privado (int x)
{
int[][] arr = nuevo int[x][x];
int len = longitud de longitud, máx = 0, recuento = 0;
specArr(arr, len, max, contar);
arrprint(arr);
}
// Se utiliza para impresión avanzada de salida.
arrprint vacío estático privado (int [][] arr)
{
para (int[] en: arr)
{
para (int t: en)
{
System.out.print(t + "/t");
}
System.out.println();
}
}
especificación de vacío estático privadoArr(int[][] arr, int len, int max, int count)
{
mientras (len > 0)
{
int j = 0;
para (int índice = 0; índice < (len - 1) * 4; índice ++)
{
si (índice <len - 1)
arr[0 + recuento][índice + recuento] = ++max;
de lo contrario si (índice < 2 * (len - 1))
arr[cuenta + j++][arr.length - 1 - cuenta] = ++max;
de lo contrario si (índice < 3 * (len - 1))
arr[arr.length - 1 - recuento][(j--) + recuento] = ++max;
de lo contrario si (índice <4 * (len - 1))
arr[arr.length - 1 - (j++) - recuento][0 + recuento] = ++max;
}
si (len == 1)
{
arr[arr.longitud / 2][arr.longitud / 2] = máx + 1;
}// Tenga en cuenta que cuando el valor de y es un número impar, habrá un bucle para n = 1 y es necesario complementar el valor medio de la matriz.
contar++;
longitud = longitud - 2;
}
}
}
Espero que este artículo sea útil para la programación Java de todos.