导航:首页 > 编程语言 > 实现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相关的资料

热点内容
python程序代码最简单 浏览:125
文件夹粘贴文件黑屏一下 浏览:859
服务器wait什么意思 浏览:261
java电子商务系统源码 浏览:500
单片机还要涨多久 浏览:256
苹果app上的小锁怎么设置 浏览:536
瑞萨单片机为什么不出名 浏览:799
阿里云服务器性能优化安全测试 浏览:370
linux组命令 浏览:967
怎么推广app让人去下载和注册 浏览:548
空调压缩机启动电容用大一点的行吗 浏览:396
mac命令行查找文件 浏览:177
按键精灵安卓版怎么停止线程 浏览:73
九爷妾不从命压缩包下载 浏览:462
单片机and 浏览:687
什么叫可编程 浏览:940
安卓如何敲击手机背面打开健康码 浏览:215
加密机硬件设计 浏览:640
全部解压游戏名 浏览:639
小程序素材网站解析源码 浏览:759