according to documentation
For floating-point numbers, Kotlin provides types Float and Double.
According to the IEEE 754 standard, floating point types differ by
their decimal place, that is, how many decimal digits they can store.
Float reflects the IEEE 754 single precision, while Double provides
double precision.
+--------+------------+------------------+---------------+----------------+
| Type | Size(bits) | Significant bits | Exponent bits | Decimal digits |
+--------+------------+------------------+---------------+----------------+
| Float | 32 | 24 | 8 | 6-7 |
| Double | 64 | 53 | 11 | 15-16 |
+--------+------------+------------------+---------------+----------------+
and there is
If such a value contains more than 6-7 decimal digits, it will be rounded.
therefore for a float number we have :
val eFloat = 2.7182818284f // Float, actual value is 2.7182817