One*_*ros 2 java foreach loops for-loop
这些语句在Java的内存占用和效率方面完全相同吗?
第一:
Object[] array = new Object[100];
int i = 0;
for (; i < array.length; i++){
Object o = array[i];
//do something
}
Run Code Online (Sandbox Code Playgroud)
第二:
Object[] array = new Object[100];
for (int i = 0; i < array.length; i++){
Object o = array[i];
//do something
}
Run Code Online (Sandbox Code Playgroud)
第三:
Object[] array = new Object[100];
for (Object o : array){
//do something
}
Run Code Online (Sandbox Code Playgroud)
在内存占用和效率方面,是的.但是,存在差异.在第一个中,i
存在(有一个范围)超出循环; 而在第二个它没有.在第三种情况下,没有(直接)方式来访问索引或更改当前对象位置的数组内容.