Java – how to make a variable of type float null
If my float variable is set to 0, my code works, but if my variable is null, I want my code to work How can I do that? This is a snippet of code I wrote:
float oikonomia= (float)((float)new Float(vprosvasis7.getText().toString())); if(oikonomia==0){
I tied if (oikonomia = = null) or if (oikonomia = null) but it didn't work
P. S.: another way is to initially set oikonomia = 0; Also, if the user changes it, go to my if session It doesn't work either
Float oikonomia = Float. valueOf(vprosvasis7.getText(). toString());
if(oikonomia.toString() == " "){ float oikonomia= (float)((float)new Float(vprosvasis7.getText().toString())); oikonomia=0; if(oikonomia==0){
It doesn't work either:
Float oikonomia = Float.valueOf(vprosvasis7.getText().toString()); if(oikonomia.toString() == " "){
Solution
If you want a floating-point number that can be null, try float instead of float
Float oikonomia= new Float(vprosvasis7.getText().toString());
But it will never be empty like your example
Editor: Aaaah, I'm beginning to understand your problem You really don't know what vprosvas7 contains and whether it is properly initialized to numbers So try this and:
Float oikonomia = null; try { oikonomia = new Float(vprosvasis7.getText().toString()); } catch (Exception ignore) { // We're ignoring potential exceptions for the example. // Cleaner solutions would treat NumberFormatException // and NullPointerExceptions here } // This happens when we had an exception before if (oikonomia == null) { // [...] } // This happens when the above float was correctly parsed else { // [...] }
Of course, there are many ways to simplify the above and write clearer code But I think this should explain how to correctly and safely parse a string into a float without encountering any exceptions