Possible Duplicate:
for loop optimization
In java i have a block of code:
List e = {element1, element2, ...., elementn};
for(int i = 0; i < e.size(); i++){//Do something in here
};
and another block:
List e = {element1, element2, ...., elementn};
int listSize = e.size();
for(int i = 0; i < listSize; i++){//Do something in here
};
I think that the second block is better, because in the first block, if i++, we have to calculate e.size() one more times to compare the condition in the for loop. Is it right or wrong?
And comparing the two block above, what is the best practice for writing for? And why?Explain clearly and try this loop yourself
Personally I’d use the enhanced for statement instead:
Unless you need the index, of course.
If I had to use one of the two forms, I’d use the first as it’s tidier (it doesn’t introduce another local variable which is only used in that loop), until I had concrete evidence that it was causing a problem. (In most list implementations,
e.size()is a simple variable access which can be inlined by the JIT anyway.)