Что такое float в Java?



Я написал этот код:



float b = 3.6;


и я получаю это:




Error:Unresolved compilation problem:
Type mismatch: cannot convert from double to float


почему? Что такое определение float?

580   4  

4 ответов:

в Java, когда вы вводите десятичное число как 3.6, его интерпретируют как double. double является 64-разрядной точностью IEEE 754 с плавающей запятой, в то время как float32-разрядная точность IEEE 754 с плавающей точкой. Как float менее точно, чем a double преобразование не может быть выполнено неявно.

если вы хотите создать поплавок, вы должны закончить свой номер с f (например: 3.6f).

для получения дополнительных объяснений см. примитивные типы данных определение учебном руководстве по Java.

сделать

float b= 3.6f;

литерал с плавающей точкой типа float, если она является суффиксом букву ASCII F или F; иначе его тип double, и это необязательно может быть суффиксом в ASCII буква D или D.

дело в том, что десятичные числа дефолтов в два раза. И поскольку double не вписывается в float, вы должны четко сказать, что вы намеренно определяете float. Так что идите с:

float b = 3.6f;

в JAVA, такие значения, как:

  1. 8.5
  2. 3.9
  3. (и так далее..)

считается двойной, а не float.

вы также можете выполнить приведение для решения проблемы:

float b = (float) 3.5;

другое решение:

float b = 3.5f;

Comments

    Ничего не найдено.