導航:首頁 > 編程語言 > 實現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相關的資料

熱點內容
php登陸次數 瀏覽:742
python字元轉成數字 瀏覽:822
海川用的是什麼伺服器 瀏覽:374
口才是練出來的pdf 瀏覽:458
雲伺服器哪個公司性價比高 瀏覽:515
源碼論壇打包 瀏覽:556
php怎麼做成word 瀏覽:690
python批量生成密鑰 瀏覽:490
程序員要不要考社區人員 瀏覽:150
app的錢怎麼充q幣 瀏覽:813
android銀行卡識別 瀏覽:751
怎麼在app投放廣告 瀏覽:11
手機文件管理怎麼看app名稱 瀏覽:192
程序員學數學哪本書最全 瀏覽:784
macd實戰選股公式源碼 瀏覽:644
加密晶元的計算方法 瀏覽:191
手機存儲為什麼找不到微信文件夾 瀏覽:697
msf埠遷移命令 瀏覽:880
工商app積分怎麼查詢 瀏覽:146
鐵路app怎麼買火車票 瀏覽:311