簡體   English   中英

如何在java中打印二維數組?

[英]How to print a 2D array in java?

我堅持這一點。 我想打印一個數組,其大小在代碼中聲明。

package userdefinedarray;

import java.util.Arrays;


public class userdefinedarray 
{    
    public static void main(String[] args) 
    {        
    int[][] myArray = new int[5][10];    
    for(int i=0;i<myArray.length;i++)
    {
        myArray[i] = null;
    }
    System.out.println(Arrays.toString(myArray));
    System.out.println(Arrays.deepToString(myArray));
}

}

這是輸出。 “new int[5][10]”中的 >>[10]<< 發生了什么?

[null, null, null, null, null]
[null, null, null, null, null]

您的二維數組由數組數組組成。 這樣想。 對於每個數組元素,想象一個新數組作為一個元素。 因此,為了打印它,您需要遍歷每個數組,換句話說,遍歷行和列。

for(int i=0; i<myArray.length;i++){
    for(int j=0;j<myArray[0].length;j++)
       System.out.print(myArray[i][j] + " ");
    System.out.println();
}

如果你想用任何特定的非空值填充你的數組,你可以在外部 for 循環中進行。

此外,你不能做

myArray[i] = null;

如果你想真正做到這一點,請使用

myArray[i] = new int[myArray[0].length];

您首先創建一個包含 5 個數組的數組,每個數組有 10 個 int(初始化為 0)。

然后在 for 循環中,將第一個維度的每個索引設置為 null。 然后您有一個包含五個空元素的數組。

如果由於某種原因您真的想使用空值,我建議您改用 List。

如果你想設置你的數組的值,你應該在第一個循環中嵌套另一個循環,但是然后將本機 int 類型設置為 null 我相信會拋出異常

暫無
暫無

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

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