簡體   English   中英

For Each Loop 編輯原始二維數組

[英]For Each Loop Editing Original 2D Array

在 for each 循環中,輸出為 6。但是,我認為輸出將為 0,因為至少對於一維數組,每個循環只遍歷數組。 如果“f”只是循環中的局部變量,如何編輯“g”?

int[][] g = new int[7][7];

for(int[] f : g) {
    for(int h = 0; h < f.length; h++)
        f[h] = 6;
}

System.out.println(g[4][6]);

盡管 Java 是按值傳遞的,但如果您傳遞的值是對可變數據類型的引用,則它們可以被改變。

如您所知, f是您在增強型 for 循環中迭代的值,但它表示二維數組g包含的每個元素。

在這種情況下,您的int[]是可變的。 您正在積極地將二維數組中的值完全編輯為另一個值。

暫無
暫無

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

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