Floating point literals are described by the following lexical definitions:
floatnumber: pointfloat | exponentfloat pointfloat: [intpart] fraction | intpart "." exponentfloat: (nonzerodigit digit* | pointfloat) exponent intpart: nonzerodigit digit* | "0" fraction: "." digit+ exponent: ("e"|"E") ["+"|"-"] digit+
Note that the integer part of a floating point number cannot look like an octal integer. The allowed range of floating point literals is implementation-dependent. Some examples of floating point literals:
3.14 10. .001 1e100 3.14e-10
Note that numeric literals do not include a sign; a phrase like -1 is actually an expression composed of the operator - and the literal 1.