Java плаває проти подвійного - Дізнайтеся 9 унікальних порівнянь

Зміст:

Anonim

Відмінності між Java плавають проти Double

Тип даних поплавця - це одноточна 32-бітна плаваюча точка IEEE 754. Діапазон значень виходить за межі цього обговорення, але він в основному визначений у розділі Типи, формати та значення з плаваючою комою у специфікації мови Java.

Подвійний тип даних - це 64-розрядна плаваюча точка IEEE 754 з подвійною точністю. Діапазон значень виходить за межі цієї дискусії, але визначений у розділі Типи, формати та значення з плаваючою комою у специфікації мови Java.

Поплавок в основному використовується для збереження пам'яті у великих масивах чисел з плаваючою комою. Завжди потрібно пам’ятати, що тип даних ніколи не повинен використовуватися для точних значень, таких як валюта.

Подвійний тип даних зазвичай є типовим вибором для десяткових значень. Тип даних ніколи не слід використовувати для точних значень, таких як валюта.

Значення за замовчуванням

Тип данихЗначення за замовчуванням (для полів)
плавати0, 0f
подвійний0, 0д

Тип даних Float в Java зберігає десяткове значення з 6-7 загальними цифрами точності. Так, наприклад, 12.12345 можна зберегти як поплавок, але 12.123456789 не можна зберегти як поплавок. Представляючи тип даних з плаваючою на Java, ми повинні додати літеру f до кінця типу даних, інакше це збережеться як подвійне.

Подвійний тип даних зберігає десяткові значення з точністю 15-16 цифр. Значення за замовчуванням - 0, 0d, це означає, що якщо ви не додасте f або d до кінця десяткової, значення буде збережено як подвійне на Java.

Порівняння «голова до голови» між Java float і Double (Інфографіка)

Нижче наведено найкращі 7 зіставлень між плаваючими Java та Double

Ключові відмінності Java float від Double

Нижче наведено список пунктів, що пояснюють ключову різницю між float та Double in java

  1. Подвійний тип даних є більш точним, ніж плаваючий на Java. За замовчуванням номери з плаваючою комою в Java подвійні. Для того, щоб зберегти їх у змінну float, вам потрібно викласти їх явно або суфіксом з 'f' або 'F'.
  2. Float використовує 1 біт для знака, 8 біт для експонента і 23 біта для мантіси, але подвійний використовує 1 біт для знака, 11 біт для експонента і 52 біта для мантіси.
  3. Є кілька важливих речей, які ми можемо враховувати під час вибору Java float та Double. Ми також можемо зіткнутися з деякими ситуаціями, коли нам потрібно використовувати певний тип даних, до тих пір, і якщо, якщо ви не відчуєте, що ваш результат не впишеться в поплавок, то в цій ситуації ви можете вибрати подвійний.
  4. І Java float, і Double - це приблизні типи, але відрізняються між собою простором пам'яті та деякими іншими речами.
  5. Коли ви хочете порівнювати java і float, завжди віддайте перевагу Big Decimal, а коли ви працюєте з конструктором Big Decimal, вам потрібно використовувати параметр рядка.

Таблиця подвійного порівняння Java float vs Java

Далі наведена таблиця порівняння між плаваючим Java та Double

ОСНОВА ДЛЯ

ПОРІВНЯЙТЕ

Java floatJava Double
ВизначенняТип даних поплавця - одноточний 32-бітнийПодвійний тип даних - це 64-розрядний 64-розрядний з подвійною точністю
Використанняменша точністьБільш точність
ПеревагиШирока бібліотека підтримки.

Відкритий код та розвиток громади.

Більше можливостей для веб-розробки та орієнтованого на Інтернет
ЗберіганняFloat потребує 32-бітного зберігання (It

Просто збережіть 4 байти, щоб зберегти змінну)

Подвійному потрібно 64-бітове зберігання (Це

займає 8 байт для зберігання змінної)

ВченіПоплавок - 32-бітова плаваюча точка IEEE 754Подвійний - це 64-бітова плаваюча точка IEEE 754.
ТочністьТочність поплавка - від 6 до 7 знаків після комиПодвійний може забезпечити точність до 15-16 знаків після коми.
ДальністьПоплавок має менший діапазон у порівнянні з подвійним.Double має більш високий діапазон.

Висновок - Java float vs Double

Хоча як Java float і Double можна використовувати для представлення чисел з плаваючою комою, є кілька речей, які ми можемо розглянути, щоб вибрати між плаваючою та подвійною Java. Хоча обидва Java float vs Double є приблизними типами, якщо вам потрібен більш точний і точний результат, тоді використовуйте double. Використовуйте float, якщо у вас обмеження пам'яті, оскільки це займає майже половину більше місця, ніж подвійне. Якщо ваші номери не можуть відповідати діапазону, запропонованому float, використовуйте подвійний. Хоча будьте обережні з розрахунком і поданням з плаваючою комою, не використовуйте подвійний чи плаваючий для розрахунку грошових коштів, а використовуйте Великий Десятковий.

Це все на різниці між float і double в Java. Пам’ятайте, що за замовчуванням номери з плаваючою комою в Java подвійні, якщо ви хочете зберегти їх у змінну з плаваючою точкою, вам потрібно або ввести їх явно, або суфіксувати за допомогою символу «f» або «F».

Обидва Java float vs Double використовуються для представлення реальних чисел у Java, тобто чисел із дробами чи десятковими знаками.

Ви повинні використовувати логічний оператор, наприклад, > або <для порівняння змінних Java float і Double, замість = і! = тому що вони не точні.

Це також найкраща практика вибору типу даних, який займає менше місця для зберігання, якщо цього достатньо для даних, які ви зберігаєте, тому вибирайте поплавок над подвійним, якщо ви задоволені точністю і дальністю, подвійне є більш точним, ніж плавати.

Double і float не використовуються для представлення значень, для яких потрібна дуже висока точність. Так, наприклад, для зберігання значень валюти не годиться використовувати подвійний або плаваючий, натомість у Java є клас "Великий десятковий знак", який визначає точну кількість цифр після десяткової, включаючи округлення вгору або вниз.

І тип даних Double, і float використовуються для представлення чисел з плаваючою комою на Java, подвійний тип даних є більш точним, ніж float. Подвійна змінна може забезпечити точність до 15-16 знаків після коми, порівняно з поплавковою точністю від 6 до 7 знаків після коми. Ще одна суттєва відмінність між float і double в java - їх вимога до зберігання, подвійний коштує дорожче, ніж float. Для зберігання змінної потрібно 8 байт, тоді як плаваючий просто займає 4 байти. Це означає, що якщо пам'ять обмежує, то краще використовувати float, ніж подвійний. Подвійний тип також має більший діапазон, ніж плаваючий, і якщо ваші номери не вписуються добре в поплавок, то вам доведеться використовувати подвійний на Java. Варто також зазначити, що числа з плаваючою комою або реальні числа за замовчуванням подвійні на Яві. Якщо ви хочете зберегти їх у змінній з плаваючою точкою, вам потрібно або відкинути їх, або використовувати префікс 'f' або 'F'.

Рекомендована стаття

Це було корисним керівництвом щодо відмінностей Java float від Double, тут ми обговорили їх значення, порівняння «голова до голови», ключову різницю та висновок. Ви також можете переглянути наступну статтю, щоб дізнатися більше -

  1. Дивовижні відмінності Java Vector проти ArrayList
  2. Який найкращий Java Performance або Python
  3. Java проти Python - найкращі 9 найважливіших порівнянь
  4. Хадоп проти Кассандри
  5. Продуктивність Scala vs Java: що краще?
  6. Хадоп проти іскри і які їх переваги
  7. ACCA vs CIMA: Переваги