2017-03-21 246 views
0

面試問題如何將元素添加到數組?

最近有人問我,在任何邏輯編寫一個程序元素添加到陣列

$arr = array(1,2,3,4,5,7,8,9,10); 

現在我們需要5後添加6

條件是:

1)我們不能用temp variablenew array存儲。

2)不能使用內建功能。

回答

0

無法修改數組的大小。如果你想要一個更大的數組,你必須實例化一個新的數組。

更好的解決方案是使用一個ArrayList,它可以隨着你的需要而增長。 ArrayList.toArray(T [] a)方法在您需要的時候爲您提供數組。

+0

沒有它不是我正在尋找的答案 –

+0

數組的長度在java中是不可變的。這意味着一旦你創建了一個數組,你就不能改變它的大小。如果使用2個元素初始化它,則其長度爲2.然而,您可以使用不同的集合。 列表 myList = new ArrayList (); myList.add(5); myList.add(7); 並使用包裝器方法 public void addMember(Integer x){myLayer.add(x); }; –

+0

不用在build函數中。 –

0

您可以使用現有數組併爲其分配一個值。 $arr[] = 11 這將創建一個索引,並將值作爲數組的一部分。

+0

我需要在特定位置添加它並移動剩餘的位置。 –

+0

你會在這裏得到你的答案https://www.codecademy.com/en/forum_questions/4fc68250ddb66c000301c983 –

+0

在給定的鏈接,他們已經使用變量,這是不允許的。感謝您的幫助 –

0

a = ['a','b','c','d'];

a [a.length] ='e';

//一個現在是[ 「一」, 「B」, 「C」, 「d」, 「E」]

對於後者,合併的陣列,沒有功能可以只是環通過陣列,應選擇最大的循環。但是,正如評論所述。通常沒有很好的理由這樣做。

+0

我需要在特定位置添加它並移動剩餘的 –