您的位置:首页 > 编程语言 > Java开发

《Java程序性能优化》学习笔记之ArrayList和LinkedList

2015-07-28 21:22 471 查看
1.ArrayList底层是数组实现,是一块连续的内存空间,查询速度,删除添加慢;LinkedList是双向链表,头结点中不存放数据,实现栈和队列的操作方法,因此也可以作为栈、队列和双端队列来使用,查询慢,删除添加速度

2.ArrayList初始化大小为10,添加元素时要判断是否需要扩容,需要则扩大到1.5倍+1。添加和删除元素时,需要进行数组的复制(System.arraycopy),慢

3.LinkedList添加元素都要new Entry

4.在尾端添加元素,ArrayList相对LinkedList会快一点点,且无需新建Entry

5.遍历时 ForEach<迭代器<for,(ForEach被编译器优化成迭代器)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: