Is there any appreciable difference between if and if-else?

Posted by Drew on Stack Overflow See other posts from Stack Overflow or by Drew
Published on 2010-04-20T19:00:35Z Indexed on 2010/04/20 19:03 UTC
Read the original article Hit count: 274

Given the following code snippets, is there any appreciable difference?

public boolean foo(int input) {
   if(input > 10) {
       doStuff();
       return true;
   }
   if(input == 0) {
       doOtherStuff();
       return true;
   }

   return false;
}

vs.

public boolean foo(int input) {
   if(input > 10) {
      doStuff();
      return true;
   } else if(input == 0) {
      doOtherStuff();
      return true;
   } else {
      return false;
   }
}

Or would the single exit principle be better here with this piece of code...

public boolean foo(int input) {
   boolean toBeReturned = false;
   if(input > 10) {
      doStuff();
      toBeReturned = true;
   } else if(input == 0) {
      doOtherStuff();
      toBeReturned = true;
   }

   return toBeReturned;
}

Is there any perceptible performance difference? Do you feel one is more or less maintainable/readable than the others?

© Stack Overflow or respective owner

Related posts about java

Related posts about maintainability