Generally, exceptions should be thrown only for unexpected conditions, those that you can't foresee and control through your code. It would be better if you can avoid to throw an exception by using some sort of validation (an if-else for example).
For educative purposes and to answer your question, a simple way to throw an exception for a "wrong" input String would be (in pseudocode):
read String;
if String contains alphabetical characters, then throw Exception (IllegalArgumentException would be a good candidate in our case);
So you should consider two things: First, create a proper validation method for your String and then throw the appropriate exception if your input contains alphabetical characters. The validation part will be up to you, the part of throwing an exception can be covered here: http://docs.oracle.com/javase/tutorial/essential/exceptions/throwing.html
I agree. But regardless of whether you use exceptions or not, the first step is to define what EXACTLY is and is not allowed. What about symbols? What about commas, decimal points, negative signs? In accounting practices, I believe parentheses are acceptable to indicate a negative value.
And don't forget that different locations in the world use the '.' and the ',' in the exact opposite manner...
I would create a validation method that accepted an input String and returned true/false if it was valid or not. As others have suggested, check for all possible input characters. Is white space allowed (space, tab)? How big can the input string be? If it represents an integer, you can use Integer.parseInt(String s) to see if it is valid. This method will throw a NumberFormatException if it cannot parse the String as an int.
Post by:autobot
No matter how many women are assigned to the project, a pregnancy takes nine months. Much longer than this tiny ad:
a bit of art, as a gift, the permaculture playing cards