Javascript複製對像數組而不引用
array Python module |
Arrays |
ast Python module |
code Python module |
COM PHP module |
copy Python module |
dis Python module |
Ev PHP module |
exp |
imp Python module |
io Python module |
JavaScript |
Mocha JavaScript library |
Network PHP module |
operator Python module |
os Python module |
Python functions |
Rar PHP module |
re Python module |
StackOverflow |
string Python module |
sys Python module |
Yar PHP module
Michael Zippo
在 Java 中使用數組時,您可能會決定製作一個數組的副本。例如,如果您經營一家咖啡館並想創建季節性菜單,您可以創建原始菜單的副本,以作為新菜單的基礎。
在 Java 中,您可以通過多種方式進行複制數組。本教程將探討四種常見的表格複製方法,並逐行討論它們的工作原理。閱讀本教程後,您將成為在 Java 中復製表的大師。
Java 數組
在 Java 中,數組是一個容器,其中包含包含單個類型。例如,表格可用於存儲書籍列表或玩家在飛鏢遊戲中獲得的分數列表。
當您想要處理許多值時,數組很有用“Äã” Äã因為您可以將它們存儲在一個集合中。這允許您壓縮您的代碼並同時在相同的值上運行相同的方法。
單詞讓我們想要創建一個數組來存儲我們咖啡店出售的咖啡。我們可以使用以下代碼:
String [] = coffees {"Espresso", "Mocha", "Latte", "cappuccino", "Versare Over", "Flat white" } ;
在本例中,我們聲明了一個名為 cafes
的數組,用於存儲字符串值。我們的數組包含六個值。
數組的每個元素都分配有一個索引號,從 0 開始,可用於引用數組中的各個元素。
現在我們已經了解了 Java 數組的基礎知識,我們可以討論可以用來複製表內容的方法。
使用賦值運算符複製數組
複製數組最常用的克隆方法之一是使用賦值運算符。
賦值運算符用於為數組賦值。使用賦值運算符,我們可以賦值將現有數組的內容複製到一個新變量中,這將創建我們現有數組的副本。
讓我們回到咖啡店。假設我們要創建 cafes
數組,我們將以此為基礎創建夏季咖啡菜單。我們可以使用以下代碼創建數組的副本:
我們的代碼返回:
Espresso、Moka、Latte、Cappuccino、Pour over、flat white,
從 Descended 中斷我們的代碼。在 CopyAssignment 類的第一行代碼中,我們聲明了一個名為 cafes
的數組,它存儲我們的標準咖啡館菜單。
在下一行,我們使用賦值運算符來分配cafes
的值到一個名為 summer_coffees
的新數組中。接下來,我們創建一個“for-each”循環,傳遞每個 summer_coffees
數組元素並打印到控制台。
使用此方法有一個缺點:如果您更改一個數組的元素,另一個數組也會改變。所以如果我們在 summer_coffee
列表中改變 Latte
Summer Latte
的值,我們的 coffee
列表也將被更改
循環複製數組
我們討論的第一種複制數組的方法 -. 通過使用賦值運算符 -創建所謂的 copy shallow.
之所以如此,是因為我們已經將一個現有的數組對象分配給了一個新的對象,這意味著當我們更改任何對象時,它們都將被更改 - . 這兩個對象是相關的
但是,我們經常需要創建一個深拷貝。深拷貝複制現有對象的值,並創建一個新的數組對象。創建完整副本時,您可以編輯新的不影響原表。
可用於創建完整副本的一種方法是創建一個
循環遍歷數組的內容並創建一個新數組。
假設我們想要創建一個名為 summer_coffees 的 cafes 表
的完整副本。
這應該是一個完整的副本,因為我們打算修改 summer_coffees
的內容表格來反映我們將在夏季提供的新咖啡。
這是我們將使用
循環創建深層副本的代碼:
當我們運行我們的代碼時,輸出如下:
[Espresso, Mocha, Latte, Cappuccino, Pour over, Flat White]
如您所見,我們的代碼創建了原始數組的副本。我們一步一步解釋它是如何工作的:
- 我們導入
java.util.Arrays
其中包括 toString() 方法,我們將使用它來打印我們的數組到示例末尾的控制台。
- 我們聲明一個名為
cafes
的數組,它將咖啡列表存儲在我們的標準菜單中。 - 我們初始化一個名為
summer_coffees
的數組,該數組可以存儲六個值。 - 我們使用循環遍歷 cafe
列表中的每個項目。 - 每當循環執行時,summer_coffees 中 index 值為
i
的元素將被分配 cafes 中 code 索引值為 <> i 的元素。 - 我們使用 Arrays.toString() 將
summer_coffees
轉換為字符串,然後將新數組與我們複製的項目一起打印到控制台。
Java copyOfRange()方法複製Arrays .copyOfRange( ) 是 java.util.Arrays 類的一部分 下面是 copyOfRange () 方法的語法: