Различия между Java float и Double
Тип данных с плавающей запятой - это 32-битная IEEE 754 с плавающей точкой одинарной точности. Диапазон значений выходит за рамки этого обсуждения, но в основном он указан в разделе «Типы, форматы и значения с плавающей запятой» в спецификации языка Java.
Двойной тип данных представляет собой 64-битную IEEE 754 с плавающей точкой двойной точности. Его диапазон значений выходит за рамки этого обсуждения, но указан в разделе «Типы, форматы и значения с плавающей запятой» в спецификации языка Java.
Число с плавающей запятой в основном используется для сохранения памяти в больших массивах чисел с плавающей запятой. Всегда нужно помнить, что тип данных никогда не должен использоваться для точных значений, таких как валюта.
Тип данных double обычно используется по умолчанию для десятичных значений. Тип данных никогда не должен использоваться для точных значений, таких как валюта.
Значения по умолчанию
Тип данных | Значение по умолчанию (для полей) |
поплавок | 0.0f |
двойной | 0.0d |
Тип данных с плавающей точкой в Java хранит десятичное значение с точностью до 6-7 цифр. Так, например, 12.12345 можно сохранить как число с плавающей точкой, но 12.123456789 нельзя сохранить как число с плавающей точкой. При представлении типа данных с плавающей точкой в Java мы должны добавить букву f в конец типа данных, в противном случае он будет сохранен как double.
Двойной тип данных хранит десятичные значения с точностью 15-16 цифр. Значение по умолчанию - 0.0d, это означает, что если вы не добавите f или d к концу десятичной дроби, значение будет сохранено как двойное в Java.
Сравнение лицом к лицу между Java float и Double (Инфографика)
Ниже приведены 7 лучших сравнений между Java float и Double
Ключевые различия между Java float и Double
Ниже приведен список точек, объясняющих разницу между float и Double в Java.
- Двойной тип данных более точен, чем float в Java. По умолчанию числа с плавающей точкой в Java являются двойными. Чтобы сохранить их в переменной с плавающей точкой, вам нужно привести их явным образом или суффиксом 'f' или 'F'.
- Float использует 1 бит для знака, 8 бит для экспоненты и 23 бита для мантиссы, но double использует 1 бит для знака, 11 бит для экспоненты и 52 бита для мантиссы.
- Есть некоторые важные вещи, которые мы можем принять во внимание при выборе Java float и Double. Мы также можем столкнуться с некоторыми ситуациями, когда нам нужно использовать конкретный тип данных, до тех пор, пока, если вы не почувствуете, что ваш результат не будет соответствовать плавающему, то в этой ситуации вы можете выбрать удвоение.
- И Java float, и Double являются приблизительными типами, но отличаются пространством памяти и некоторыми другими вещами.
- Если вы хотите сравнить java и float, всегда предпочитайте Big Decimal, а когда вы работаете с конструктором Big Decimal, вам нужно использовать строковый параметр.
Java с плавающей запятой против Java Двойная сравнительная таблица
Ниже приведена сравнительная таблица между Java float и Double
ОСНОВА ДЛЯ
СРАВНЕНИЕ | Java поплавок | Java Double |
Определение | Тип данных с плавающей точкой - 32-битная с одинарной точностью | Тип данных double - 64-разрядная с двойной точностью |
использование | меньшая точность | Больше точности |
Преимущества | Обширные библиотеки поддержки.
Открытый исходный код и развитие сообщества. | Больше возможностей для веб-разработки и веб-ориентированных |
Место хранения | Float необходимо 32-битное хранилище
Просто возьмите 4 байта для хранения переменной) | Double требуется 64-битное хранилище
занимает 8 байт для хранения переменной) |
Академики | Float - это 32-битная IEEE 754 с плавающей точкой. | Двойное число - это 64-битная IEEE 754 с плавающей запятой. |
точность | Точность с плавающей запятой от 6 до 7 десятичных цифр | Double может обеспечить точность до 15-16 знаков после запятой. |
Ассортимент | Поплавок имеет меньший диапазон по сравнению с двойным. | Двухместный имеет более высокий диапазон. |
Вывод - Java float против Double
Хотя Java float и Double могут использоваться для представления чисел с плавающей запятой, есть несколько вещей, которые мы можем рассмотреть, чтобы выбрать между Java float и double. Хотя оба типа Java float vs Double являются приблизительными типами, если вам нужен более точный и точный результат, используйте double. Используйте float, если у вас есть ограничения памяти, потому что он занимает почти вдвое меньше места, чем вдвое. Если ваши числа не могут вписаться в диапазон, предлагаемый float, тогда используйте double. Хотя будьте осторожны с вычислением и представлением с плавающей точкой, не используйте double или float для денежного расчета, вместо этого используйте Big Decimal.
Вот и вся разница между float и double в Java. Помните, что по умолчанию числа с плавающей запятой двойные в Java, если вы хотите сохранить их в переменной с плавающей запятой, вам нужно либо привести их явным образом, либо добавить суффикс с помощью символа 'f' или 'F'.
Обе Java float против Double используются для представления действительных чисел в Java, то есть чисел с дробными или десятичными точками.
Вы должны использовать логический оператор eg> или <для сравнения переменных Java float и Double вместо = и! = потому что они не точные.
Также рекомендуется выбирать тип данных, который занимает меньше места, если его достаточно для данных, которые вы храните, поэтому выбирайте float вместо double, если вас устраивают точность и диапазон, хотя double более точный, чем float.
Double и float не используются для представления значений, для которых требуется очень высокая точность. Так, например, для хранения значений валют не рекомендуется использовать double или float, вместо этого в Java есть класс «Big Decimal», который указывает точное количество цифр после десятичной дроби, включая округление в большую или меньшую сторону.
Тип данных Double и float используется для представления чисел с плавающей запятой в Java, тип данных double более точен, чем float. Двойная переменная может обеспечить точность до 15–16 десятичных знаков по сравнению с точностью до 6–7 десятичных знаков. Еще одно существенное различие между float и double в java - это требования к хранилищу, double дороже, чем float. Для хранения переменной требуется 8 байтов, в то время как float занимает всего 4 байта. Это означает, что если память ограничена, то лучше использовать float, чем double. Тип double также имеет больший диапазон, чем число с плавающей точкой, и если ваши числа плохо помещаются в число с плавающей точкой, то вам нужно использовать double в Java. Также стоит отметить, что числа с плавающей запятой или действительные числа по умолчанию удваиваются в Java. Если вы хотите сохранить их в переменной с плавающей точкой, вам нужно либо привести их, либо использовать префикс «f» или «F».
Рекомендуемая статья
Это было полезное руководство по различиям между Java float и Double, здесь мы обсудили их значение, сравнение «голова к голове», разницу между ключами и заключение. Вы также можете посмотреть следующую статью, чтобы узнать больше -
- Удивительные отличия Java Vector от ArrayList
- Какая лучшая производительность Java или Python
- Ява против Питона - Лучшие 9 важных Сравнений
- Hadoop против Кассандры
- Scala против производительности Java: что лучше?
- Hadoop против Spark и каковы их преимущества
- ACCA против CIMA: преимущества