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));
}
}
}