BTW, this shows how stupid is the for loop in Java implementation. The suggested safeList() should be handled by the compiler IMO, I see no gains to not have it in but to get NPEs. Did I miss something?
Jacques From: "Paul Foxworthy" <[email protected]>
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 wroteHi, 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.
