Java float vs Double - Opi 9 ainutlaatuista vertailua

Sisällysluettelo:

Anonim

Erot Java-kelluvuuden ja kaksinkertaisen välillä

Kelluva datatyyppi on yhden tarkkuuden 32-bittinen IEEE 754 liukuluku. Arvoalue ei kuulu tämän keskustelun piiriin, mutta se on määritelty pääasiassa Java-kielen eritelmän kelluvien pisteiden tyypit, muodot ja arvot -osiossa.

Kaksinkertainen tietotyyppi on kaksinkertaisen tarkkuuden 64-bittinen IEEE 754 liukuluku. Sen arvoalue ei kuulu tämän keskustelun piiriin, mutta se on määritelty Java-kielen eritelmän Liukuvien pisteiden tyypit, muodot ja arvot -osiossa.

Kellua käytetään pääasiassa muistin tallentamiseen suurissa liukulukujen ryhmissä. Meidän on aina muistettava, että tietotyyppiä ei tule koskaan käyttää tarkkoihin arvoihin, kuten valuuttaan.

Kaksinkertainen tietotyyppi on yleensä oletusvalinta desimaaliarvoille. Tietotyyppiä ei tule koskaan käyttää tarkkoihin arvoihin, kuten valuuttaan.

Oletusarvot

TietotyyppiOletusarvo (kentät)
kellua0.0f
kaksinkertainen0.0d

Java-kelluva tietotyyppi tallentaa desimaalin arvon tarkkuuden 6-7 kokonaismerkillä. Joten esimerkiksi 12.12345 voidaan tallentaa kelluvana, mutta 12.123456789 ei voida tallentaa kelluimena. Edustettaessa kelluvaa tietotyyppiä Java: ssa meidän tulisi lisätä kirjain f tietotyypin loppuun, muuten se tallentuu kaksinkertaisena.

Tupla-tietotyyppi tallentaa desimaaliarvot tarkkuudella 15-16 numeroa. Oletusarvo on 0, 0d, mikä tarkoittaa, että jos et lisää f tai d desimaalin loppuun, arvo tallennetaan kaksinkertaisena Java: ssa.

Head to Head -vertailu Java-kelluimen ja kaksinkertaisen välillä (infografia)

Alla on 7 suosituinta vertailua Java-kelluvuuden ja kaksinkertaisen välillä

Tärkeimmät erot Java-kelluvuuden ja kaksinkertaisen välillä

Alla on luettelo kohdista, jotka selittävät keskeisen eron kelluvan ja kaksinkertaisen javalla

  1. Kaksinkertainen tietotyyppi on tarkempi kuin Java-kelluva. Oletuksena Java-liukulukujen numerot ovat kaksinkertaiset. Tallentaaksesi ne kelluvaan muuttujaan, sinun täytyy heittää ne nimenomaan tai liittää 'f' tai 'F'.
  2. Kelluu käyttää 1 bittiä merkille, 8 bittiä eksponentille ja 23 bittiä mantissalle, mutta kaksinkertainen käyttää 1 bittiä merkille, 11 bittiä eksponentille ja 52 bittiä mantissalle.
  3. On joitain tärkeitä asioita, jotka voidaan ottaa huomioon valittaessa Java float ja Double. Saatamme joutua kohtaamaan myös joitain tilanteita, joissa meidän on käytettävä tiettyä tietotyyppiä, kunnes ja ellei tuntuu, että tuloksesi ei sovi kelluvaan, voit tässä tilanteessa valita kaksinkertaisen.
  4. Sekä Java float että Double ovat tyypillisiä tyyppejä, mutta eroavat muistitilan ja joidenkin muiden asioiden suhteen.
  5. Kun haluat verrata javaa ja floatia, suosittele aina isoa desimaalia ja kun työskentelet Big Decimal -konstruktorin kanssa, sinun on käytettävä merkkijonoparametria.

Java kelluva vs. Java-kaksinkertainen vertailutaulukko

Seuraava on vertailutaulukko Java-kelluvuuden ja kaksinkertaisen välillä

PERUSTA

VERTAILU

Java kelluuJava Double
MääritelmäKelluva datatyyppi on yhden tarkkuuden 32-bittinenKaksinkertainen tietotyyppi on kaksinkertainen tarkkuus 64-bittinen
Käyttövähemmän tarkkuuttaLisää tarkkuutta
hyötyjäLaaja tukikirjastot.

Avoimen lähdekoodin ja yhteisön kehittäminen.

Lisää ominaisuuksia verkkokehitykseen ja verkkokeskeiseen
varastointiKelluu tarvitsee 32-bittisen tallennustilan (It

Tallenna vain 4 tavua muuttujan tallentamiseksi)

Double tarvitsee 64-bittisen tallennustilan (It

kestää 8 tavua muuttujan tallentamiseksi)

tutkijoitaKelluja on 32-bittinen IEEE 754 -liukulukuTupla on 64-bittinen IEEE 754 liukuluku.
TarkkuusKelluvuuden tarkkuus on 6-7 desimaaliaTupla voi antaa tarkkuuden jopa 15-16 desimaalin tarkkuudella.
alueKellukkeen etäisyys on pienempi kuin kaksinkertaisessa.Tupla-alue on suurempi.

Johtopäätös - Java kelluu vs. kaksinkertainen

Vaikka sekä Java-float- että Double-tunnisteita voidaan käyttää edustamaan liukulukujen numeroita, on muutamia asioita, jotka voimme harkita valitsemalla Java-float- ja double-arvojen välillä. Vaikka molemmat Java-float vs. Double ovat likimääräisiä tyyppejä, jos tarvitset tarkempia ja tarkempia tuloksia, käytä kaksinkertaista. Käytä kellua, jos muistitila on rajoitettu, koska se vie lähes puolta vähemmän tilaa kuin kaksinkertainen. Jos numerosi eivät mahtu kelluvan tarjoamalle alueelle, käytä kaksinkertaista. Vaikka olkaa varovainen liukulukujen laskennassa ja esittämisessä, älä käytä kaksinkertaista tai kelluvaa rahalaskelmissa, sen sijaan käytä suurta desimaalia.

Siinä kaikki ero on Java-kelluvan ja kaksinkertaisen välillä. Muista, että oletusarvoisesti liukulukujen numerot ovat Java-muodossa kaksinkertaiset, jos haluat tallentaa ne kelluvaan muuttujaan, sinun on joko heitettävä ne suoraan tai liitettävä ne 'f' tai 'F' merkillä.

Molempia Java-kelluvia vs. kaksinkertaisia ​​käytetään esittämään Java-reaalilukuja, ts. Murtolukujen tai desimaalien numeroita.

Sinun tulisi käyttää loogista operaattoria, esimerkiksi> tai <, vertaamaan sekä Java-float- että Double-muuttujia = ja! Sijasta! = koska ne eivät ole tarkkoja.

On myös paras tapa valita tietotyyppi, joka vie vähemmän tallennustilaa, jos se riittää tallentamaan tietoon, joten valitse float yli kaksinkertainen, jos olet tyytyväinen tarkkuuteen ja etäisyyteen, kaksinkertainen on tarkempi kuin float.

Tupla- ja kelluvaa ei käytetä edustamaan arvoja, jotka vaativat erittäin suurta tarkkuutta. Joten esimerkiksi valuutta-arvojen tallentamiseksi ei ole hyvä idea käyttää kaksinkertaista tai kelluvaa, sen sijaan Java: lla on luokka ”Big Decimal”, joka määrittelee desimaalin jälkeisten numeroiden tarkan lukumäärän, mukaan lukien pyöristäminen ylös tai alas.

Sekä kaksinkertaista että kelluvaa tietotyyppiä käytetään edustamaan Java-liukulukujen numeroita, kaksoistietotyyppi on tarkempi kuin kelluva. Kaksoismuuttuja voi tarjota tarkkuuden 15-16 desimaalin tarkkuudella verrattuna kelluvuuden tarkkuuteen, joka on 6–7 desimaalia. Toinen merkittävä ero kelluvan ja kaksinkertaisen välillä javassa on niiden varastointivaatimus, kaksinkertainen on kalliimpaa kuin kelluva. Muuttujan tallentaminen vie 8 tavua, kun taas kelluu vain 4 tavua. Tämä tarkoittaa, että jos muisti on rajoitettua, on parempi käyttää floatia kuin kaksinkertaista. Tuplatyypillä on myös suurempi etäisyys kuin kelluvalla ja jos numerosi eivät sovi hyvin kelluvaan, sinun on käytettävä kaksinkertaista Java-versiota. On myös syytä huomata, että liukuluku- tai reaaliluvut ovat Java-oletusarvoisesti kaksinkertaiset. Jos haluat tallentaa ne kelluvaan muuttujaan, sinun on joko heitettävä ne tai käytettävä etuliite 'f' tai 'F'.

Suositeltava artikkeli

Tämä on ollut hyödyllinen opas Java-kelluvuuden ja kaksinkertaisen erotuksen välillä. Tässä olemme keskustelleet niiden merkityksestä, päästä päähän -vertailuun, avaineroon ja johtopäätöksiin. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. Hämmästyttäviä eroja Java Vector vs ArrayList
  2. Mikä on paras Java-suorituskyky tai Python
  3. Java vs Python - 9 tärkeintä vertailua
  4. Hadoop vs. Cassandra
  5. Scala vs Java Performance: Mikä on parempi?
  6. Hadoop vs Spark ja mitä hyötyä niistä on
  7. ACCA vs. CIMA: Edut