java - 如何将二维数组乘以因子

标签 java arrays multidimensional-array

我有一个二维数组

private static int [][] n = {{1, 2, 3, 4}, {5, 6, 7, 8}}; 

我有

int m = 3; 

如何将二维数组中的每个元素乘以 3?
所以输出会是这样的:

{{3, 6, 9, 12},{15, 18, 21, 24}}

另外,如果我有一个像

这样的矩阵
{{1, 2, 3, 4, 5}, 
{6, 7, 8, 9, 10}, 
{11, 12, 13, 14, 15}, 
{16, 17, 18, 19, 20}, 
{21, 22, 23, 24, 25}}, 

如何打印对角线元素?

{1,7,13,19,25} and {5,9,12,17,20}

我想知道算法,因为我使用了乘法数组

private static int[] n = {1, 2, 3, 4, 5, 6, 7};

private static int[] multiply(int[] n, int m) {

    int array[] = new int[n.length];
    for (int i = 0; i < n.length; i++) {
        array[i] = n[i] * m;
    }
    return array;

}

最佳答案

只需迭代两个维度:

private static int[][] multiply(int[][] n, int m) {
    int array[][] = new int[n.length][];
    for (int i = 0; i < n.length; i++) {
        array[i] = new int[n[i].length];
        for (int j = 0; j < n[i].length; j++) {
            array[i][j] = n[i][j] * m;
        }
    }
    return array;
}

关于java - 如何将二维数组乘以因子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45360042/

相关文章:

c++ - (Qt C++)暂时 “disable” 2d map 中的一个键吗?

java - 这个方法在 Big O 表示法中如何执行?

java - Spring 3.2 和 jackson 2 : add custom object mapper

java - 每像素颜色混合

java - 了解数组访问(处理)

javascript - 展平 Javascript 对象数组

c# - 将 C# 列表传递给 X++

PHP 在普通数组中推送关联数组

java - 无法使用 Htmlunit 连接到使用 HTTPS 的网站

java - 从另一个字符串中删除一组不连续的字符(作为字符串)?