Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数组的元素作为对另一个数组的引用?_Java - Fatal编程技术网

Java 数组的元素作为对另一个数组的引用?

Java 数组的元素作为对另一个数组的引用?,java,Java,我正在尝试创建一个16行11列的二维数组,其中第0行第3列是对另一个一维数组的引用。我该怎么做呢?我已经有了两个数组,其中一维数组是char数组(尽管如果需要,我可以将其设置为字符串数组),而二维数组是字符串数组。二维数组的其余部分为每个元素填充了纯字符串,但第0行第3列除外,我希望它是一维数组。听起来你解决问题的方法是错误的。也许你应该重新考虑你的数据结构。通常,数组是类型化的。您不能真正决定在一个单元格中插入不同的类型 如果确实无法更改数据结构,请尝试在每个单元格中插入一个一维字符串数组,其

我正在尝试创建一个16行11列的二维数组,其中第0行第3列是对另一个一维数组的引用。我该怎么做呢?我已经有了两个数组,其中一维数组是char数组(尽管如果需要,我可以将其设置为字符串数组),而二维数组是字符串数组。二维数组的其余部分为每个元素填充了纯字符串,但第0行第3列除外,我希望它是一维数组。

听起来你解决问题的方法是错误的。也许你应该重新考虑你的数据结构。通常,数组是类型化的。您不能真正决定在一个单元格中插入不同的类型

如果确实无法更改数据结构,请尝试在每个单元格中插入一个一维字符串数组,其中只有一个条目,这是通常会出现的字符串,第0行第3列除外,它已经是一个数组

Object[] arrayToReference = ...;
Object[][] arrayWithReference =  new Object[] { ..., arrayToReference, ...};
这应该行得通;只要引用数组,它就会随着原始数组的更改而更改

下面是一个示例代码片段:

    Object[] array = new Object[] { "Test!" };
    Object[][] arrayArray = new Object[][] { array };
    System.out.println("Before: " + arrayArray[0][0]);
    array[0] = "Test2!";
    System.out.println("After: " + arrayArray[0][0]);
具有以下输出:

Before: Test!
After: Test2!

我正在考虑一个有点过分的解决方案,但应该通过一些改进来解决这个问题。如果可能的话

您可以创建两个实现相同接口的类吗?第一个是2D数组的类型,另一个是带有1D数组的类


由于它们实现了一个公共接口,因此可以使用该接口创建二维数组。这种2D数组可以在任意位置接受任意类型的两个对象。

为什么我的代码很重要?问题很具体。。。你想让我发布两个数组吗。。。你希望用这个完成什么?将数组放在其他数据的2D矩阵的中间是非常困难的。也许如果我们能更好地理解您的问题空间,我们可以引导您找到更理想(更容易编写代码)的解决方案。告诉我们您的程序试图处理什么,因为到目前为止,您的设计听起来非常神秘。键入是什么意思?与数据类型相同?是,数据类型。如果您有一个字符串[],则不能向其中添加另一个字符串[],只能定义一个string.2D数组作为数组的数组。这样,类型的2D数组可以包含相同类型的1D数组。同意,但他正在尝试将1D数组添加到1D数组。不,我想将1D数组添加到2D数组(它的一个元素)-第0行,第3列。我想让我的程序遍历这个2D数组,看看每个元素是否与用户的输入匹配。当我的程序检查2D数组的这个特定元素(第0行,第3列)时,我希望它通过1D数组的元素来检查它是否匹配用户的输入。基本上,我希望2D数组的特定元素是对我的1D数组的引用,以便它检查1D数组的元素。我希望这是有道理的。