zoukankan      html  css  js  c++  java
  • 转 list三种遍历效率

    第一种:迭代器遍历
    for(Iterator<String>    it    =    list.iterator();    it.hasNext();    )    {   
           ....   
       }   
    这种方式在循环执行过程中会进行数据锁定,性能稍差,同时如果你想在循环过程中去掉某个元素,只能调用it.remove方法,不能使用list.remove方法
     
    第二种:增强for循环
     for(String   data    :    list)    {   
           .....   
       }   
    内部调用第一种,换汤不换药,因此比Iterator慢,这种循环方式还有其他限制,不建议使用它
     
    第三种:
     for(int    i=0;    i<list.size();    i++)    {   
           A    a    =    list.get(i);   
           ...   
       }   
      内部不锁定,    效率最高,    但是遍历时list.remove会导致list的索引发生变化,所以很容易出现问题
     
    结论:遍历访问:使用for循环
        遍历移除:使用iterator循环
  • 相关阅读:
    slf4j+log4j2的配置
    日志规约
    log4j2配置文件log4j2.xml详解(转载)
    好用的打包工具webpack
    gulp插件
    学习自动化工具gulp
    git
    nodejs学习随笔
    好用的meta标签
    小问题记录
  • 原文地址:https://www.cnblogs.com/lige-H/p/7404361.html
Copyright © 2011-2022 走看看