看老大的代码需要取list里面每个元素的时候,都是
Iterator it = list.iterator();
while (it.hasNext()) {
personnelID= (String) it.next();
}
这样比我直接写for(int i=0;i<list.size();i++){
personnelId=(String)list.get(i);
}
有什么优点吗?
------解决方案--------------------
itertor即枚举器,枚举器是Java在后台自动排序好,比纯粹的for循环要快,因为如果用 for循环,也需要将List中的对象依次取出,这样对内存的调用是随机的,不如Iterator。
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
帽子太强大了。。
------解决方案--------------------
用iterator迭代属于面向对象编程。更加符合JAVA本身。
另外学过数据结构的都应该了解LinkedList,是以链表为基础实现,链表便于顺序访问。在操作的时候,查快改慢。
ArrayList,顾名思义,以数组方式实现,便与随机访问,查慢改快。
foreach内部实现原理也是迭代,但不方便单个数据的修改。
------------
c,c++,数据结构没及格学生留。
------解决方案--------------------
最好的做法
List <String> list = new ArrayList <String>();
for (String s:list) {
System.out.println(s);
}
Iterator it = list.iterator(); 这样的用法一般在jdk 1.5以前使用。