I did some googleling, but was unable to find a solution to my question.
Are there generally accepted java coding conventions according to double and float declaration?
What syntax is recommended by those guidelines?
Double d = 1d; Double d = 1D; Double d = 1.; Double d = 1.0; Double d = 1.0d; Double d = 1.0D;
Same goes for Float and Long and also their primitives.
Long l = 1l; Long l = 1L;
All compile the same, but there are difference in clearness when reading these lines of code. The one with the upper case d seems to be more likely to be read wrong –> “D” could be read as “0” or so.
Advertisement
Answer
From the Java Tutorials:
Floating-Point Literals
A floating-point literal is of type float if it ends with the letter F or f; otherwise its type is double and it can optionally end with the letter D or d.
The floating point types (float and double) can also be expressed using E or e (for scientific notation), F or f (32-bit float literal) and D or d (64-bit double literal; this is the default and by convention is omitted).
double d1 = 123.4; // same value as d1, but in scientific notation double d2 = 1.234e2; float f1 = 123.4f;
This tells you that:
- Both D and d have the same meaning – just as you observed
- “By convention [D or d are] omitted” because they are the default
Questions of the type “what is better” are offtopic on StackOverflow since they can’t have a correct or incorrect answer, only opinions.
But if you ask for a convention I would tend to follow what I’ve found above – omit the suffix.