码迷,mamicode.com
首页 > 其他好文 > 详细

list集合的遍历3种方法

时间:2015-04-24 12:18:56      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

  1. package com.sort;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.Iterator;  
  5. import java.util.List;  
  6.   
  7. /** 
  8.  * list的三种遍历 
  9.  * 
  10.  */  
  11. public class ListTest {  
  12.   
  13.     public static void main(String[] args) {  
  14.           
  15.         List<String> list = new ArrayList<String>();  
  16.           
  17.         list.add("a");  
  18.         list.add("b");  
  19.         list.add("c");  
  20.         list.add("c");//可添加重复数据  
  21.           
  22.         //遍历方法一  
  23.         for(Iterator<String> iterator = list.iterator();iterator.hasNext();){  
  24.             String value = iterator.next();  
  25.               
  26.             System.out.println(value);  
  27.         }  
  28.           
  29.         //遍历方法二  
  30.         for(String value : list){  
  31.             System.out.println(value);  
  32.         }  
  33.           
  34.         //遍历方法三  
  35.         for(int i=0;i<list.size();i++){  
  36.             System.out.println(list.get(i));  
  37.         }  
  38.           
  39.     }  
  40. }  


三种遍历的比较分析:

 

 

方法一遍历:

执行过程中会进行数据锁定,    性能稍差,    同时,如果你想在循环过程中去掉某个元素,只能调用it.remove方法。   

 

方法二遍历:

内部调用第一种

 

方法三遍历:

内部不锁定,    效率最高,    但是当写多线程时要考虑并发操作的问题

 

List接口的两种主要实现类ArrayList和LinkedList都可以采用这样的方法遍历

 

关于ArrayList与LinkedList的比较分析
a) ArrayList底层采用数组实现,LinkedList底层采用双向链表实现。
b) 当执行插入或者删除操作时,采用LinkedList比较好。
c) 当执行搜索操作时,采用ArrayList比较好。

 

 

说白了,就是数据结构中的顺序存储和链式存储

list集合的遍历3种方法

标签:

原文地址:http://www.cnblogs.com/godlovelian/p/4452709.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!