Если суффиксу 'f' необходимо при объявлении float в Java, потому что double является значением по умолчанию, почему допустимо не использовать 'f', когда float не является десятичным?Почему не требуется «f» при объявлении не десятичного плавающего числа в Java?
float myFloat = 123.45 // not ok because double is the default
float myFloat = 123.45f // ok because the float is explicit
float myFloat = 123 // ok, but why? isn't it still a double by default?
http://stackoverflow.com/questions/4097694/float-int-implicit-conversion –
Сужение: double 12345678912344.0 для плавания, возможная потеря близкого значения - не допускается. Расширение int 123 до float, значение float остается рядом с исходным значением: разрешено. –