2013-09-26 57 views
0

我有一個通用的陣列像這樣的尺寸:獲取通用陣列

T[] array; 
array = (T[]) new Object[capacity]; 

,我想它的大小以後(它的變化)。我試過array.size(),但它會拋出一個錯誤,說Error: Cannot invoke size() on the array type T[]。我發現很多關於如何創建通用數組的帖子(我知道我的方法與大多數不匹配,使用Array.newInstance),但沒有關於使用通常可用於數組的默認方法。

任何幫助表示讚賞。

回答

2

嘗試使用array.length來獲得屬性'length'。 size()方法只適用於Collection。

+0

我感到非常愚蠢的。晚了。謝謝。 – Nealon

+0

即時消息只是要刪除這個,並假裝我從來沒有這種愚蠢 – Nealon

+0

@ Neonon你會得到什麼錯誤? – Maroun

1

您應該詢問array.length屬性的數組大小。

對你來說壞消息 - 數組大小在你定義它之後不會改變。 如果你想要一個「動態數組」嘗試使用來自Collections框架的東西。例如java.util.ArrayList

0
array.length 

是數組的屬性,如果該數組的大小返回一個int大小。

如果您想要更好的清單,我會使用ArrayList,您可以在集合上使用size()方法。

0

嘗試

System.out.println(array.length);