Hi Erwan,

To be sure there is no Null Pointer Exception, yes, you need to test for
null first. One possibility is to just let the NPE happen.

The discussion at
http://stackoverflow.com/questions/2250031/null-check-in-an-enhanced-for-loop

suggests

for( Object o : safe( list ) ) {
   // do whatever 
 }

Where safe would be:

public static List safe( List other ) {
    return other == null ? Collections.EMPTY_LIST : other;
}

Cleaner code. I suspect the method would be inlined by most Java compilers. 

Cheers

Paul Foxworthy


Erwan de FERRIERES-3 wrote
> 
> Hi,
> 
> I'm trying to remove a lot of iterators, and use the for-each syntax, 
> which exists since java 1.5.
> During my journey, I found a lot of double tests for a while like this
> one:
> 
> while (typePurposes != null && typePurposes.hasNext()) {
> (ContactMechWorker.java line 606)
> 
> Can it be simplified to for(GenericValue contactMechTypePurpose : 
> theList) ? Or should I keep it like it is ?
> 
> Regards,
> 
> -- 
> Erwan de FERRIERES
> www.nereide.biz
> 

-----
--
Coherent Software Australia Pty Ltd
http://www.cohsoft.com.au/

Bonsai ERP, the all-inclusive ERP system
http://www.bonsaierp.com.au/

--
View this message in context: 
http://ofbiz.135035.n4.nabble.com/loop-code-simplification-tp4487741p4488324.html
Sent from the OFBiz - Dev mailing list archive at Nabble.com.

Reply via email to