is that really more work than:
int res;
try { res = Integer.parseInt( s ); } // if part
catch ( NumberFormatException nfe ) { } // else part
The words are different (try/catch instead of if/else), but still 2 blocks of code with similar syntax...