 <p>The answer is highly situational. In general, you want to handle exceptions elegantly whenever possible. That is, try to resolve / ignore them where you can. An IndexOutOfBoundsException is very often an example of where this is not possible.</p> <p>Hard breaks because of exceptions is a last-resort. Do this only when your program <strong><em>cannot</em></strong> continue.</p> <p>This question's answer has a good post on it. <a href="http://stackoverflow.com/questions/77127/when-to-throw-an-exception">When to throw an exception?</a></p>