導航:首頁 > 編程語言 > 實現java的arraylist

實現java的arraylist

發布時間:2024-12-22 01:58:18

A. java ArrayList的用法

import java.util.ArrayList;
import java.util.Iterator;

public class Demo {
public static void main(String[] args){
ArrayList list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
System.out.println("list中添加了a,b,c三個元素");

Iterator it = list.iterator();
System.out.print("遍歷list得到的結果:");
while(it.hasNext()){
System.out.print(it.next() + ",");
}
System.out.println();

list.clear();
System.out.println("已經移除了list中的所有元素");
}
}

ArrayList類:
ArrayList實現了可變大小的數組。它允許所有元素,包括null。ArrayList沒有同步。
size,isEmpty,get,set方法運行時間為常數。但是add方法開銷為分攤的常數,添加n個元素需要O(n)的時間。其他的方法運行時間為線性。
每個ArrayList實例都有一個容量(Capacity),即用於存儲元素的數組的大小。這個容量可隨著不斷添加新元素而自動增加,但是增長演算法並沒有定義。當需要插入大量元素時,在插入前可以調用ensureCapacity方法來增加ArrayList的容量以提高插入效率。
Map介面:
請注意,Map沒有繼承Collection介面,Map提供key到value的映射。一個Map中不能包含相同的key,每個key只能映射一個value。Map介面提供3種集合的視圖,Map的內容可以被當作一組key集合,一組value集合,或者一組key-value映射。

B. 用java創建一個稱為List的類,它能存儲任何類型的對象,並可以在任何時候增加或刪除對象

Java中是有java.util.List介面的,實現類有一大堆,常用的有ArrayList(底層是數組)和LinkedList(底層是鏈表),創建方法是這樣的:

List<Object>arryList=newArrayList<Object>();
List<Object>linkedList=newLinkedList<Object>();

上面用到是多態。

添加是這樣的:

arrayList.add(obj);
linkedList.add(obj);//兩個一樣,沒區別

刪除是這樣的:

arrayList.remove(0);//0是下標
linkedList.remove(0);

如果只是增加和刪除的話,建議使用LinkedList,效率高一些。

如果非要自己寫一個類的話,會麻煩很多。

publicclassList<L>{
privateLinkedList<L>list=newLinkedList<L>();
publicvoidadd(Ll){
list.addLast(l);
}
publicvoidremove(inta){
//方法
list.remove(a);
}
}

其中L表示範型, 別問為什麼要用L,因為我姓梁。

希望我的回答能對你有所幫助,榮幸之至。

閱讀全文

與實現java的arraylist相關的資料

熱點內容
模具編程的職責 瀏覽:941
華為ssh改加密演算法 瀏覽:147
文件夾空白合同 瀏覽:761
pythonwebpy開發 瀏覽:669
不是c編譯器的有 瀏覽:660
win10壓縮包下載 瀏覽:905
逆戰手機app怎麼樣 瀏覽:946
自嗨自我解壓圖片 瀏覽:395
電子書導入kindle哪個文件夾 瀏覽:418
pythontcpserver性能 瀏覽:544
linux文件夾改名 瀏覽:564
單片機開發板是什麼 瀏覽:851
阿里雲伺服器不能截屏 瀏覽:866
如何自己製作聯想伺服器 瀏覽:843
停車場規劃演算法 瀏覽:922
深蹲PDF 瀏覽:908
數據科學包python 瀏覽:849
程序員學習視頻網站 瀏覽:125
吃雞游戲如何安卓轉蘋果 瀏覽:188
python編程輸入5個數 瀏覽:94