我正在尝试编写一个方法来汇总数组中的相邻单元格,并使用获得的值填充第二个数组中的位置

时间:2016-09-21 18:25:38

标签: java arrays multidimensional-array

我对java很新,我想知道如何使用这些值获取n x n数组并对周围值求和,然后将其插入secondArray,或许使用for循环?我很感激帮助。

firstArray:

1 1 0 1 0 1

1 0 1 0 1 0

1 1 0 0 1 1

1 1 0 0 1 1

0 0 0 1 1 0

secondArray:

2 3 3 2 3 1

4 6 3 3 4 4

4 5 3 4 4 4

3 3 3 4 5 4

2 2 2 2 3 3

1 个答案:

答案 0 :(得分:0)

这是机制(当你说矩阵是NxN时,将最后一行添加到矩阵中):

int[][] matrix = new int[][]{
        { 1, 1, 0, 1, 0, 1 },
        { 1, 0, 1, 0, 1, 0 },
        { 1, 1, 0, 0, 1, 1 },
        { 1, 1, 0, 0, 1, 1 },
        { 0, 0, 0, 1, 1, 0 },
        { 0, 0, 0, 0, 0, 0 }
};

int[][] result = new int[ matrix.length ][ matrix.length ];

for (int i = 0; i < matrix.length; i++) {
    for (int j = 0; j < matrix.length; j++) {
        result[ i ][ j ] = sumOfSurrounding( matrix, i, j );
    }
}

for (int i = 0; i < matrix.length; i++) {
    for (int j = 0; j < matrix.length; j++) {
        System.out.print( result[ i ][ j ] + " " );
    }
    System.out.println();
}

现在,您只需实施static int sumOfSurrounding( int[][] matrix, int i, int j )方法。