【问题标题】:How can I join two Matrix in Java如何在 Java 中加入两个矩阵
【发布时间】:2011-01-07 16:51:54
【问题描述】:

我想加入 2 个具有相同列数和不同行数的矩阵,但我想知道如何使用一个命令来做到这一点。

我已经知道如何使用 for's 来完成这项工作,然后,我想知道 Java 中是否有一个命令可以为我完成这项工作。

例如

int m1[][] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};

int m2[][] = {{10, 11, 12}, {13, 14, 15}};

将它们连接成矩阵 m 的魔法命令

int m = join(m1,m2);

m = 

1 2 3

4 5 6

7 8 9

10 11 12

13 14 15

【问题讨论】:

    标签: java join matrix


    【解决方案1】:

    Apache Commons 是你的朋友:

    int m[][] = (int [][])ArrayUtils.addAll(m1, m2);
    

    【讨论】:

    • 我看到 Apache Commons 站点中有很多下载链接。我应该选择哪一个?
    • apache commons-lang 是你要找的
    【解决方案2】:
    int m[][] = Arrays.copyOf(m1, m1.length + m2.length);
    System.arraycopy(m2, 0, m, m1.length, m2.length);
    

    【讨论】:

    • 对不起,伙计,但它没有用。此方法不接受矩阵作为参数。
    【解决方案3】:
    int m[][] = new int[m1.length+m2.length][];
    System.arraycopy(m1, 0, m, 0, m1.length);
    System.arraycopy(m2, 0, m, m1.length, m2.length);
    

    你可能想克隆每一行

    【讨论】:

    • 对不起,伙计,但它没有用。此方法不接受矩阵作为参数。
    • 对不起,是arraycopy(带小写c)
    猜你喜欢
    • 2012-08-28
    • 2013-03-21
    • 1970-01-01
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-18
    相关资源
    最近更新 更多