Java中List集合的遍历和两种实现类的比较分析
2014-10-22 15:20
399 查看
list集合的遍历3种方法:
三种遍历的比较分析:
方法一遍历:
执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在循环过程中去掉某个元素,只能调用it.remove方法。
方法二遍历:
内部调用第一种
方法三遍历:
内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题
List接口的两种主要实现类ArrayList和LinkedList都可以采用这样的方法遍历
关于ArrayList与LinkedList的比较分析
a) ArrayList底层采用数组实现,LinkedList底层采用双向链表实现。
b) 当执行插入或者删除操作时,采用LinkedList比较好。
c) 当执行搜索操作时,采用ArrayList比较好。
ArrayList相当于数据结构中的顺序存储,LinkedList相当于链式存储。
package com.bianli; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * list的三种遍历 * @author rcy * */ public class ListTest { public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("c");//可添加重复数据 //遍历方法一 for(Iterator<String> iterator = list.iterator();iterator.hasNext();){ String value = iterator.next(); System.out.println(value); } //遍历方法二 for(String value : list){ System.out.println(value); } //遍历方法三 for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } } }
三种遍历的比较分析:
方法一遍历:
执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在循环过程中去掉某个元素,只能调用it.remove方法。
方法二遍历:
内部调用第一种
方法三遍历:
内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题
List接口的两种主要实现类ArrayList和LinkedList都可以采用这样的方法遍历
关于ArrayList与LinkedList的比较分析
a) ArrayList底层采用数组实现,LinkedList底层采用双向链表实现。
b) 当执行插入或者删除操作时,采用LinkedList比较好。
c) 当执行搜索操作时,采用ArrayList比较好。
ArrayList相当于数据结构中的顺序存储,LinkedList相当于链式存储。
相关文章推荐
- java中List集合的遍历和两种实现类的比较分析
- java中List集合的遍历和两种实现类的比较分析
- Java中Set集合的遍历及实现类比较分析
- java中Set集合的遍历及实现类比较分析
- java中Set集合的遍历及实现类比较分析
- java中Set集合的遍历及实现类比较分析
- java中List集合的遍历和两种实现类的比较分析
- java-集合(4)-用LinkedList来实现栈/队列-ArrayList和LinkedList比较
- Java遍历集合方法分析(实现原理、算法性能、适用场合)
- [疯狂Java]集合:Deque(双端队列)以及两个实现(ArrayDeque、LinkedList)、Stack(摒弃)、各线性表性能分析
- 如何在java中实现List集合的遍历
- Java遍历集合的几种方法分析(实现原理、算法性能、适用场合)
- 分析并比较Java几种集合遍历的方式
- list 遍历方式(包括java8 Lambda)的比较和简单分析
- Java中集合框架,Collection接口、Set接口、List接口、Map接口,已经常用的它们的实现类,简单的JDK源码分析底层实现
- java 集合框架之LinkedList及ListIterator实现源码分析
- Java遍历集合的几种方法分析(实现原理、算法性能、适用场合)
- java非并发容器ArrayList 和 LinkedList 优缺点比较及其实现源码分析
- Java遍历集合的几种方法分析(实现原理、算法性能、适用场合)
- Java遍历集合方法分析(实现原理、算法性能、适用场合)