gpt4 book ai didi

java - 对象句柄和数组数组

转载 作者:行者123 更新时间:2023-12-04 06:52:15 28 4
gpt4 key购买 nike

在黑莓文档中,他们说一个数组需要一个对象句柄:

int[] array; // 1 object handle

一组数组需要多少个句柄?
int[][] array = new int[4][2]; // how many handles?

我不知道它是否是一个单一的,因为毕竟,数组可以被解释为一块内存,或者它是倍数(在这种情况下为 5),因为在第一个元素中每个元素会有一个 -水平阵?

最佳答案

正如您所发现的,Java 没有多维数组。它有数组数组。

鉴于此声明:

int[][] array = new int[4][2];

有 4 int[]数组,每个数组都有 2 int元素。
Object o1 = array[0];
Object o2 = array[1];
Object o3 = array[2];
Object o4 = array[3];

因此,这意味着 array也是 Object[] .
Object[] oX = array;

仅仅因为你有一个 int[][] , 并不意味着每个 int[]当然是不同的。
int[][] weird = new int[4][];
weird[0] = weird[1] = weird[2] = weird[3] = new int[5];

现在只有一个 int[] , 和每个 weird[i]共享此引用。
weird[0][2] = 5;
System.out.println(weird[3][2]); // prints "5"

关于java - 对象句柄和数组数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2949343/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com