Iterator it = a.iterator();
while(it.hasNext())
{
it.next(); 这个只new了一个对象 等该对象用完了 才会随着jvm的垃圾回收机制不定时的回收
}
2::
for(Iterator it = a.iterator ; it.hasNet())
{ 这个是在局部变量中new的对象 ,虽然每循环一次都重新new了一个对象 但是由于在局部,每循环一次就会释放一次,
也就是说每次循环一次结束 进入下一次循环之前,new的it这个对象已经释放了,这就是为什么 写for循环的时候
看似new了很多对象 而只用一个it变量就可以的原因 所以这个循环效率应该高一些的
it.next();
} |