you can add a bit of formatting to your numeric literals by utilizing the “_” (underscore) character between digits.
Link
Purely for legibility of large numbers or fp-numbers with large number of decimal digits.
Integer literals are of type int unless they are suffixed with an L , denoting that they are to be produced as a long value
Link
Seems a bit silly that you can declare the variable as a long and the compiler happily ignores that when first evaluating the literal.
numeric types default to the appropriate flavor of zero, characters are set to the null character ( \0 ), and boolean variables have the value false
Article
Member variables of a class are initialized to default values, but not variables declared within methods, conditional blocks, or loops.
if you want to ensure that your application produces exactly the same results on different platforms, you can use the special keyword strictfp as a class modifier on the class containing the floating-point manipulation
Link
Tells compiler to stick to IEEE 754 standard.
An important portability feature of Java is that primitive types are precisely defined. For example, you never have to worry about the size of an int on a particular platform; it’s always a 32-bit, signed number.
Link
Seems like they’re locking themselves in but I suppose numbers for daily use may rarely reach beyond that limit.