[英]ArrayList of ArrayList
快速提問。 假設我將ArrayList
bigArrayList
定義為ArrayList
的ArrayList
。 我的bigArrayList
包含ArrayList
以外的其他數據類型嗎? 其他數據類型,例如int
, String
,對象還是簡單數組?
ArrayList創建的示例代碼:
ArrayList<ArrayList<String>> bigArrayList = new ArrayList<ArrayList<String>>();
ArrayList<String> smallArrayList = new ArrayList<String>();
bigArrayList.add(smallArrayList);
int myInt = 12;
bigArrayList.add(smallArrayList); //Acceptable??
另外,一旦將smallArrayList添加到bigArrayList中,我將如何進行修改? 提前致謝。
不可以,除了ArrayList
之外, ArrayList
的ArrayLists
不能包含其他元素。 如果嘗試放入其他內容,則會出現編譯器錯誤。
但是,您可以將bigArrayList
定義為ArrayList bigArrayList= new ArrayList();
沒有任何類型信息,您可以存儲所需的任何內容。因此,泛型非常危險。
在集合中使用泛型(“ <>”事物)的目的是告訴編譯器您僅將特定類型的對象(及其子類)放入其中。 因此,您不能將其他類型放入bigArrayList
。 您可以不使用darijan建議的泛型來解決此問題。 正如他也警告過的那樣,不建議這樣做。
用於修改smallArrayList
其加入后bigArrayList
,既可以修改所需要的代碼恢復smallArrayList
的從參考bigArrayList
(例如bigArrayList.get(0)
和修改),或者你保留smallArrayList
參考,並將其傳遞到所述修改的代碼。
順便說一句,您想通過代碼實現什么? 至少可以說,您在這里嘗試做的是很不尋常的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.