簡體   English   中英

將數組存儲在2d數組Java中

[英]Store an array within a 2d array Java

那么為什么這不起作用呢? 不確定為什么這是不可能的 - 我只是想在2d數組中存儲一個大小為2的數組。

我知道這相當於設置存儲[0] [0] =數組[0]和存儲[0] [1] =數組[1],但只是想知道為什么這是不正確的。

public class Test {

    public static void main(String[] args) {
        boolean[][] storage = new boolean[10][2];
        boolean[] array = new boolean[2];
        array[0] = true;
        array[1] = false;

        storage[0][] = array; //Why can't I do this?
    }
}

提前致謝

你的作業中有一對偏離的括號。 只是用

storage[0] = array;

首先boolean[][] storage = new boolean[10][2]聲明一個數組並初始化它。

所以,你創建了11個數組。 boolean[]元素類型之一和boolean type 10。

這很好,如果你想直接訪問它的成員,但是如果你最近使用new boolean[]創建一個內部數組,那就是一個開銷。

使用boolean[][] storage = new boolean[10][]; 代替。

然后,您可以訪問它的boolean[]類型的元素,並將數組分配給它。

storage[0] = array;

你的問題是流浪的方括號(我相信你知道)。 您的代碼應如下所示:

storage[0] = array;

之前的答案並沒有真正解釋為什么,所以這就是我要做的。

你要做的是讓第一個位置( storage[0] )保持與array相同的值。 array是1維的,因此它只能是storage 一部分 ,它是2維的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM