if (Float.isNaN(x))… here is a solution to the problem.
if (Float.isNaN(x))
float aa = Float.valueOf(a.getText().toString());
if (Float.isNaN(aa)) {
aa = 0;
}
I’m trying to check if the user has no input and set it to zero if there is no input, which sounds simple but doesn’t work for me. This is my first android app and it crashes when there is no user input and the user presses the go button. Who can help?
Thank you.
Solution
I’m trying to check for no input from the user and if there’s no input just make it zero.
When there is no input or the input is invalid, valueOf
does not return NaN
; it throws You
can add a try
/catch
around the valueOf
call (because you need float, not float
, you should use
it). parseFloat
to avoid unnecessary boxing and unboxing of values:
float aa;
try {
aa = Float.parseFloat(a.getText().toString());
} catch (NumberFormatException nfe) {
aa = 0;
}