二維陣列中的四種拷貝

2021-08-18 19:37:11 字數 1536 閱讀 8500

如同一維陣列一樣,二維陣列中也有四種拷貝方式,且與一維陣列中的拷貝方式一樣

分別為:

1.for迴圈拷貝

2.clone

3.system.arraycopy

4.arrays.copyof

四種用法在上節都已經講過,那讓我們看看在二維陣列中與在一維陣列中會有什麼不

同。1.for迴圈拷貝

輸出結果

可以看出改變array[0][0]的值array2[0][0]的值並不發生改變,原因是array2拷貝只是

讓array所引用的位址拷貝得到了array中的值,本質上與array引用值的位址沒有關

系,所以改變array2中的值,array中的值並不發生改變。這裡我們用圖示再來看看

然後讓我們看看引用型別的二維陣列

拷貝的函式

輸出結果

改變t1[0][0]的值後t2[0][0]的值也一起改變,原因是t1,t2是引用型別的陣列。陣列中儲存的是一塊位址。指向儲存值得位址,拷貝得到的也是位址,且是同一塊區域的位址,改變任一位址中的值,另乙個對應位置的值也發生相應改變。我們用圖示來了解一下

可以清楚的看出拷貝後,陣列中的位址與原陣列對應同一塊位址。屬於淺拷貝。剩下三種拷貝方式與第一種類似,我們就只舉例它的用法。

引用型別的陣列

引用型別陣列

4.arrays.copyof

引用型別陣列

值得注意的是引用型別的二維陣列在棧中的儲存方式。

上述就是二維陣列的四種拷貝的用法。

(新手入門,如有錯誤,請多多指教)

一維陣列中的四種拷貝

這節我們來說陣列中四種拷貝方式 1.for迴圈拷貝 2.clone拷貝 3.system.arraycopy拷貝 4.arrays.copyof拷貝 這裡我們先建立個淺拷貝的概念 簡單來說就是拷貝後兩個變數指向同一片位址。陣列屬於引用型別,自身攜帶的是儲存值得位址。接下來讓我們從基本型別的陣列和引用...

c 四種列印二維陣列的風格

最近在學c 總結了一下這幾種列印方式 int ia 3 4 陣列本尊在此 1.完全c風格的輸出二維陣列 p指向含有四個整數的陣列,則 p就是那個陣列,而陣列名就是陣列首元素的指標,所以 p即為p所指向的那個陣列的首元素的指標 for int p 4 ia p ia 3 p cout 2.c 風格 f...

Python二維陣列轉為一維陣列的四種方法

已知a 4,0,1 9,2,7 8,12,90 列表推導式 i for j in a for i in j itertoolsfrom itertools import chain list chain.from iterable a sum小技巧sum a,operatorimport opera...