「java三维数组赋值」java一维数组赋值

博主:adminadmin 2022-12-14 18:39:06 87

今天给各位分享java三维数组赋值的知识,其中也会对java一维数组赋值进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何理解java中的三维数组?

3维数组还是很容易理解的

先讲2维数组,很直接的就能联想到一个平面结构的行、列

变成3维后 就成了一个立方体结构,如同常见的玩具魔方一样,相对于2维,就多了一个层的概念

int SanWei[][][]={{{5,2,3},{4,5,6}},{{87,7,5},{10,11,12}}};

第一层int SanWei[0][*][*] 是一个二维数组如下

int SanWei[0][0][*] :{5,2,3}

int SanWei[0][1][*] :{4,5,6}

第二层int SanWei[1][*][*] 是一个二维数组如下

int SanWei[1][0][*] :{87,7,5}

int SanWei[1][1][*] :{10,11,12}

用简单的平面、和立方体来形容会比较容易理解,画图太麻烦了,你自己手绘一下就行

2、3维比较容易理解,4维 可以借用3维立方体来理解,魔方的每一块 都是一个小的魔方,再高维的话,我的想象力不够用了

java 三维数组向二维数组赋值出错

public class MapFactory {

static byte[][][] bigmap = {

{ { 1, 1, 1, 1, 1, 1, 1, 1, 1 }, { 1, 5, 9, 9, 1, 1, 1, 1, 1 },

{ 1, 9, 2, 2, 1, 1, 1, 1, 1 },

{ 1, 9, 2, 9, 1, 1, 1, 4, 1 },

{ 1, 1, 1, 9, 1, 1, 1, 4, 1 },

{ 1, 1, 1, 9, 9, 9, 9, 4, 1 },

{ 1, 1, 9, 9, 9, 1, 9, 9, 1 },

{ 1, 1, 9, 9, 9, 1, 1, 1, 1 },

{ 1, 1, 1, 1, 1, 1, 1, 1, 1 }, },

{ { 0, 0, 1, 1, 1, 0, 0, 0 }, { 0, 0, 1, 4, 1, 0, 0, 0 },

{ 0, 0, 1, 9, 1, 1, 1, 1 }, { 1, 1, 1, 2, 9, 2, 4, 1 },

{ 1, 4, 9, 2, 5, 1, 1, 1 }, { 1, 1, 1, 1, 2, 1, 0, 0 },

{ 0, 0, 0, 1, 4, 1, 0, 0 }, { 0, 0, 0, 1, 1, 1, 0, 0 }, },

};

@SuppressWarnings("null")

static byte[][] getMaps() {

byte[][] map = new byte[bigmap[0].length][bigmap[0][0].length];//数组要初始化,

for (int i = 0; i bigmap.length; i++)

for (int j = 0; j bigmap[0].length; j++)

for (int k = 0; k bigmap[0][0].length; k++) {

map[j][k] = bigmap[i][j][k];//二维数组要先初始化,才能被赋值,

}

return map;

}

public static void main(String[] args) {

getMaps();//我给了个无参数的,默认将三维数组的第一个二维数组赋值给你定义的二维数组了

}

}

要对一个数组进行赋值,数组对象必须现在堆内存中存在才能赋值,建议看看数组产生时在堆栈中的内存图若需要可以提供

java三维数组

简单来讲就是说,第三个[

]代表的是一个数组,里面可以装{1,2,3},此时,1是元素,2也是元素。第二个[

]代表的是将多个类似第三个那样数组,再装到一个新的数组表示的就是{{1,2,3},{4,5,6},{7,8,9}},此时(1,2,3)是一个元素,(4,5,6)是一个元素。第一个[

]代表的就是将多个类似第二个那样的数组又装到一个新的数组里,通常表示方式就是{{{1,2},{3,4}},{{5,6},{7,8}}}。此时((1,2),(3,4))是一个元素,((5,6)(7,8))是一个元素。同理可以得到四维五维数组,不过一般很少会用到这么复杂

Java 多维数组

public class TestArray {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int[][] matrix = new int[5][];

for(int i = 0; i 5; i ++) {

matrix[i] = new int[i];

System.out.print("matrix[" + i + "]is");

for(int j = 0; j i; j++) {

matrix[i][j] = i * j;

System.out.print(matrix[i][j]);

if(i - j 1) {

System.out.print(",");

}

}

System.out.println("");

}

}

}

顺便说说,二楼的少了个逗号 (*^__^*)

Java三维数组拷贝问题,高手指点

你那个三位数组定义错了。。

还有就是新数组要初始化,也就是int[][][] des = new int[2][2][2];要指明长度。。

下面是个例子

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

int[][][] dest = new int[2][2][2];

System.arraycopy(src, 0, dest, 0, src.length);

for (int i = 0; i 2; i++)

for (int j = 0; j 2; j++)

for (int k = 0; k 2; k++)

System.out.println(dest[i][j][k]);

希望能帮到你。。

java 如何将三个一维数组拼成一个三维数组?

public class test{

public static void main(String[] args){

int [] arr1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 假设这是你的坐标(1,2),(3,4),……

int [][] arr2 = new int[arr1.length / 2][2]; // 创建一个行为原数组长度一半,列为2的二维数组

for (int i = 0; i arr1.length; i++) {

// 遍历原数组,赋值给新数组

arr2[i / 2][i % 2] = arr1[i];

}

for (int i = 0; i arr2.length; i++ ) {

for (int j = 0; j arr2[i].length; j++ ) {

System.out.print(arr2[i][j] + " ");

}

System.out.println();

}

}

}

输出

1 2

3 4

5 6

7 8

9 10

关于java三维数组赋值和java一维数组赋值的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-14,除非注明,否则均为首码项目网原创文章,转载请注明出处。