However, in most cases, float and double seem to be interchangeable, i.e Correctness should be your #1 consideration. Using one or the other does not seem to affec.
L specifies that a following a, a, e, e, f, f, g, or g conversion specifier applies to a long double argument
The same rules specified for fprintf apply for printf, sprintf and similar functions.
The 53 bits of double s give about 16 digits of precision The 24 bits of float s give about 7 digits of precision. 494 a double is not an integer, so the cast won't work Note the difference between the double class and the double primitive
Also note that a double is a number, so it has the method intvalue, which you can use to get the value as a primitive int. The double not in this case is quite simple It is simply two not s back to back The first one simply inverts the truthy or falsy value, resulting in an actual boolean type, and then the second one inverts it back again to its original state, but now in an actual boolean value
That way you have consistency:
39 this question already has answers here Double vs double in java [duplicate] (7 answers) difference between decimal, float and double in.net Long double vs double i am unable to understand the difference between between long double and double in c and c++ A double has a much higher precision due to it's difference in size
If the numbers you are using will commonly exceed the value of a float, then use a double Several other people have mentioned performance isssues That would be exactly last on my list of considerations