java - 左右展开java二维数组

标签 java arrays

我有二维java数组,例如:

int[]][]arr = {{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}}

我想将其左右几列复制到数组的右侧和左侧。这是我的目标:

int[][] arr = {{5, 6, 1, 2, 3, 4, 5, 6, 1, 2}, {11, 12, 7, 8, 9, 10, 11, 12, 7, 8}}

在现实生活中,我的数组非常大(1500x600),我需要一个快速的解决方案。 我知道System.arraycopy但不知道如何在这里使用它。

最佳答案

对于您发布的数组作为示例:

int[][] arr1 = {{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}}
int[][] arr2 = new int[2][10];

// ...

for(int n = 0; n < arr1.length; n++) {
    System.arrayCopy(arr1[n], 0, arr2[n], 0, 2);
    System.arrayCopy(arr1[n], 0, arr2[n], 2, 6);
    System.arrayCopy(arr1[n], 4, arr2[n], 6, 2);
}

// here arr2 will have what you want

关于java - 左右展开java二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17808500/

相关文章:

c# - 获取字符串数组的第一项和最后一项

c++ - 二维数组的输出元素

java - 如何将系统性能值量化为单个性能值

javascript - 在 JavaScript 中对数值数组和对象数组进行排序

arrays - 编写输入值为数组的 PostgreSQL 聚合函数

java - 玩2.2 不带插件启动DefaultApplication

java - 在 Java 中创建模式数组

java - Vaadin 从按钮点击重定向到 URL

java - 如何使用java处理phantomjs selenium中的javascript错误?

java - 在 pde 中隐藏选项卡