Forums Register Login

Throwing an exception with integers and strings

+Pie Number of slices to send: Send
Hello, Im looking for an example of how to throw an exception for an input string that;

rejects characters in the alphabet such as "abc..."
and only accepts numbers in the form of "1 2 3.."

Im fairly new to java and Im just looking for a solid example of this code.

-Nelson
1
+Pie Number of slices to send: Send
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

Hope this helps.
+Pie Number of slices to send: Send
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...
+Pie Number of slices to send: Send
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.
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
https://gardener-gift.com


reply
reply
This thread has been viewed 1154 times.
Similar Threads
Advise please
https or SSL
Broadcasting to addresses
way to convert text to vaild string
writing the files for particular time
More...

All times above are in ranch (not your local) time.
The current ranch time is
Mar 29, 2024 02:40:26.