1.手先增强for循环和iterator遍历的效果是一样的,也就说
增强for循环的内部也就是调用iteratoer实现的,但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。
2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。
3.而对于 LinkedList 由于获取一个元素,要从头开始向后找,因此建议使用 增强for循环,也就是iterator。
list,map,set的区别
list,map,set的区别 (首先假定小猪都是同一个细胞克隆出来的)
List = 排成一长队的小猪
Map = 放在一个个,有房间号的屋子里面的一群小猪
Set = 一群小猪贴上号,然后赶到一个猪圈里
list的四种遍历方式,遍历list集合
package sun.rain.amazing.traversal; import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; import java.util.List; /** * Created by sunRainAmazing on SUN_RAIN_AMAZING * @author sunRainAmazing */ public class TraversalList { //http://www.cnblogs.com/interdrp/p/3663602.html public static void main(String args[]){ List<String> list = new ArrayList<String>( Arrays.asList("tom","cat","Jane","jerry")); //方法1 集合类的通用遍历方式, 从很早的版本就有, 用迭代器迭代 Iterator it1 = list.iterator(); while(it1.hasNext()){ System.out.println(it1.next()); } //方法2 集合类的通用遍历方式, 从很早的版本就有, 用迭代器迭代 for(Iterator it2 = list.iterator();it2.hasNext();){ System.out.println(it2.next()); } //方法3 增强型for循环遍历 for(String value:list){ System.out.println(value); } //方法4 一般型for循环遍历 for(int i = 0;i < list.size(); i ++){ System.out.println(list.get(i)); } } }