Wie kann man in Java ein eindimensionales Int-Array in ein zweidimensionales verwandeln?

Moin zusammen.

Ich möchte hier versuchen ein beliebiges ein-dimensionales Int-Array in ein quadratisches zwei-dimensionales Int-Array zu verwandeln. Da mein Code allerdings ein return erfordert, weiß ich nicht, ob/wie ich meinen Code umstellen müsste. Ich würde mich freuen, wenn mir hierbei jemand helfen könnte.

Vielen Dank im Voraus

PS: Ich weiß, dass nicht abgefragt wird, ob das vorgegebene Array wirklich zu einem quadratischen Array transformiert werden kann. Ich möchte testweise erstmal mit einem optimalen Array arbeiten


public static int[][] makeSquareMatrix(int[] array) {
    int[][] output;
    for(int i = 1; i < array.length; i++)     {         if(array.length % i == 0)         {             output = new int [i][i];

            for(int k = 0; k < (array.length / i) ; k++)
            {
                for(int j = 0; j < (array.length / i); j++)
                {
                    output[k][j] = array[i];
                }
            }
            for(int m = 0; m < (array.length / i); m++)
            {
                for(int n = 0; n < (array.length / i); n++)
                {
                    System.out.println(output[m][n]);
                }
            }
        }
    }
    return output;
}
Anfänger, Programmieren, Java, Informatik
2 Antworten

Meistgelesene Fragen zum Thema Anfänger