比较下面两个循环,哪个执行速度快,为什么? for (Iterator iterator = list.iterator(); iterator.hasNext();) {
Map mao = (HashMap) iterator.next();
}
for (Object obj : list) {
Map map = (HashMap)obj;
}
Map mao = (HashMap) iterator.next();
}
for (Object obj : list) {
Map map = (HashMap)obj;
}
Map map = (HashMap)obj;
}编译后就是:for (Iterator iterator = list.iterator(); iterator.hasNext();) {
Map mao = (HashMap) iterator.next();
}
所以这就是为什么只有实现了iterable接口的Collection和或者数组才可以使用foreach