Java float vs Double - Научете 9-те уникални сравнения

Съдържание:

Anonim

Разликите между Java плават срещу Double

Тип данни с поплавък е еднократна 32-битова IEEE 754 с плаваща запетая. Обхватът на стойностите е извън обхвата на тази дискусия, но той е главно определен в раздела Типове, формати и стойности с плаваща запетая в спецификацията на езика на Java.

Двойният тип данни е 64-битова IEEE 754 с плаваща запетая с двойна прецизност. Обхватът му от стойности е извън обхвата на тази дискусия, но е определен в раздела Типове, формати и стойности с плаваща запетая в спецификацията на езика на Java.

Поплавък се използва главно за запазване на паметта в големи масиви от числа с плаваща запетая. Винаги трябва да помним, че типът данни никога не трябва да се използва за точни стойности, като валута.

Обикновено двойният тип данни е избор по подразбиране за десетични стойности. Типът данни никога не трябва да се използва за точни стойности, като например валута.

Стойности по подразбиране

Тип данниСтойност по подразбиране (за полета)
поплавък0.0f
двойно0.0d

Тип данни с поплавък в Java съхранява десетична стойност с 6-7 общи цифри на точност. Така например 12.12345 може да бъде записан като поплавък, но 12.123456789 не може да бъде записан като поплавък. Когато представяме тип float данни в Java, трябва да добавим буквата f в края на типа данни, в противен случай тя ще се запише като двойна.

Двойният тип данни съхранява десетични стойности с точност 15-16 цифри. Стойността по подразбиране е 0, 0d, това означава, че ако не добавите f или d до края на десетичната стойност, стойността ще бъде запазена като двойна в Java.

Сравнение от главата до главата между Java float vs Double (Инфографика)

По-долу е най-добрите 7 сравнения между плаващ Java срещу Double

Ключови разлики между Java float vs Double

По-долу е списъкът на точките, които обясняват ключовата разлика между float и Double in java

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

Java float vs Java Double Double сравнителна таблица

Следва таблицата за сравнение между Java float vs Double

ОСНОВА ЗА

СРАВНЕНИЕ

Java floatJava Double
дефиницияТипът float данни е 32-битов с една точностДвойният тип данни е 64-битов с двойна прецизност
употребапо-малка точностПовече точност
ПолзиОбширна поддръжка библиотеки.

Отворен код и развитие на общността.

Повече функции за уеб разработка и насочени към уеб
съхранениеFloat се нуждае от 32-битово съхранение (It

Просто вземете 4 байта, за да запазите променлива)

Double се нуждае от 64-битово съхранение (It

отнема 8 байта, за да съхранява променлива)

ПреподавателиПоплавъкът е 32-битова IEEE 754 с плаваща точкаДвойник е 64-битова IEEE 754 с плаваща точка.
ПрецизностТочността на поплавъка е от 6 до 7 десетични цифриDouble може да осигури точност до 15 до 16 десетични знака.
диапазонПоплавъкът е с по-нисък обхват в сравнение с двойния.Double е с по-голям обхват.

Заключение - Java float vs Double

Въпреки че както Java float, така и Double могат да бъдат използвани за представяне на числа с плаваща запетая, има няколко неща, които можем да разгледаме, за да изберем между Java float и double. Въпреки че и двата Java float vs Double са приблизителни типове, ако имате нужда от по-точен и точен резултат, тогава използвайте double. Използвайте float, ако имате ограничение на паметта, защото това отнема почти половината повече място, отколкото двойното. Ако вашите номера не могат да се поберат в диапазона, предлаган от float, използвайте двойно. Въпреки че бъдете внимателни с изчисляването и представянето с плаваща запетая, не използвайте двойно или плаващо за парично изчисление, вместо това използвайте Big Decimal.

Това е всичко на разликата между float и double в Java. Не забравяйте, че по подразбиране числата с плаваща запетая са двойни в Java, ако искате да ги съхранявате в променлива с плаваща променлива, трябва или да ги изричите изрично, или да ги наемете с помощта на символ "f" или "F".

И двата Java float vs Double се използват за представяне на реални числа в Java, т.е. числа с дроби или десетични знаци.

Трябва да използвате логически оператор, например> или <, за да сравните двете променливи Java и Double променливи, вместо = и! = защото не са точни.

Също така е най-добрата практика да изберете тип данни, който отнема по-малко място за съхранение, ако това е достатъчно за данните, които съхранявате, така че изберете float over double, ако сте доволни от точността и обхвата, двойният е по-точен, отколкото float все пак.

Double и float не се използват за представяне на стойности, които изискват много висока точност. Така например, за да съхранявате валутни стойности, не е добра идея да използвате двойно или плаващо, вместо това Java има клас „Big Decimal“, който определя точния брой цифри след десетичната, включително закръгляне нагоре или надолу.

И типът Double, и float се използват за представяне на числа с плаваща запетая в Java, двоен тип данни е по-прецизен от float. Двойната променлива може да осигури точност до 15-16 знака след десетичната запетая в сравнение с прецизна точност от 6 до 7 десетични цифри. Друга съществена разлика между float и double в java е тяхното съхранение, двойното е по-скъпо от float. За съхранение на променлива са необходими 8 байта, докато float просто заема 4 байта. Това означава, ако паметта е ограничена, тогава е по-добре да се използва float, отколкото двойно. Двойният тип също има по-голям диапазон от float и ако вашите числа не се вписват добре в float, тогава трябва да използвате двойно в Java. Също така си струва да се отбележи, че числата с плаваща запетая или реалните числа по подразбиране са двойни в Java. Ако искате да ги запазите в плаваща променлива, трябва или да ги хвърлите, или да използвате префикс 'f' или 'F'.

Препоръчителен член

Това беше полезно ръководство за разликите между Java float vs Double, тук обсъдихме тяхното значение, сравнение между главата, ключова разлика и заключение. Можете също да разгледате следната статия, за да научите повече -

  1. Невероятни разлики Java Vector срещу ArrayList
  2. Коя е най-добрата производителност на Java или Python
  3. Java срещу Python - Топ 9 важни сравнения
  4. Хадоп срещу Касандра
  5. Scala vs Java Performance: Кое е по-доброто?
  6. Hadoop vs Spark и какви са техните предимства
  7. ACCA срещу CIMA: Предимства