Peamine erinevus - täisarv vs ujuk
Ujuk ja Double on muud ümbriseklassid, mida kasutatakse primitiivsete andmetüüpide teisendamiseks. Mõnikord nõutakse primitiivse andmetüübi teisendamist objektiks ja objekti teisendamist primitiivseks andmetüübiks. Selleks saab kasutada Wrapperi klasse. Programmeerimiskeeled, näiteks Java, sisaldavad Wrapperi klasse. Neid kasutatakse selle teisendusprotsessi jaoks. Mähiseklass on klass, mis kapseldab tüüpe. Neid tüüpe saab kasutada objektide eksemplaride ja meetodite loomiseks teises klassis, mis neid tüüpe vajab. Javas on kaheksa primitiivset tüüpi. Need on int, lühikesed, baidid, pikad, boolean, char, float ja double. Boole'i andmetüübi vastav pakendiklass on Boolean. Char andmetüübi ümbriseklass on märk. Lühike, bait, täisarv, pikk, ujuk ja topelt on teised ümbrisklassid. Ürgse andmetüübi automaatselt objektiks teisendamist nimetatakse autoboksimiseks. Objekti automaatset ümbersuunamist primitiivseks tüübiks nimetatakse unboxinguks. Selles artiklis käsitletakse kahte pakendiklassi, mis on täisarv ja ujuk. Peamine erinevus täisarvu ja ujuki vahel on see, et täisarv on integreeritud andmetüübiga seotud mähkimisklass, ujuk on ujuki ürgandmete tüübiga seotud mähkimisklass.
SISU
1. Ülevaade ja peamine erinevus
2. Mis on täisarv
3. Mis on ujuk
4. Täisarvu ja ujuki sarnasused
5. Kõrvuti võrdlus - täisarv vs ujuk tabelina
6. Kokkuvõte
Mis on täisarv?
Tervik on Java-vormingus pakendiklass. Vastav andmetüüp on int. Seda kasutatakse int andmetüübi teisendamiseks objektiks või objekti teisendamiseks int-ks. Vaadake allpool toodud näite integreeritud ümbriste klassiga.
Joonis 01: Programm Integer Wrapper klassiga
Vastavalt ülaltoodud programmile on x muutuja tüüp int. See sisaldab väärtust 10. Integer.valueOf kasutatakse int teisendamiseks Integer tüüpi objektiks. Muutuja x edastatakse meetodi väärtusele. Samamoodi teisendatakse int täisarvuks.
Y on täisarvu objekt. Väärtus 5 edastatakse konstruktorile. IntValue meetodi abil teisendatakse see objekt int andmetüübiks. See teisendatud väärtus salvestatakse muutujaks z, mis mahutab int.
Joonis 02: näide automaatse boksimise ja tühjendamise kohta
Ülaltoodud programmi kohaselt on muutuja x int. Selle määramisel täisarvule kirjutab kompilaator automaatselt Integer.valueOf (x) sisemiselt. See on autopoks. Täht on täisarv. Väärtus 6 edastatakse konstruktorile. Kui määrate väärtusele b väärtuse, kirjutab kompilaator a.intValue () automaatselt sisemiselt. See on lahtipakkimine.
Mis on Float?
Float on Java-keeles pakendiklass. Vastavaks andmetüübiks on ujuk. Seda kasutatakse ujukandmetüübi teisendamiseks objektiks või objekti teisendamiseks ujukiks. Vaadake allpool toodud näite Float ümbriste klassiga.
Joonis 03: Programm Float Wrapper klassiga
Vastavalt ülaltoodud programmile on x float tüüpi muutuja. See sisaldab väärtust 20.5f. Float.valueOf-i kasutatakse ujuki teisendamiseks Float-tüüpi objektiks. Muutuja x edastatakse meetodile valueOf. Samamoodi teisendatakse ujuk ujukiks.
Y on objekt, mille tüüp on Ujuk. Väärtus 10,5f edastatakse konstruktorile. FloatValue meetodi abil teisendatakse see objekt ujukandmetüübiks. See teisendatud väärtus salvestatakse muutujaks z, mis mahutab ujukväärtust.
Joonis 04: Autoboksimise ja lahtrite eemaldamise näide2
Ülaltoodud programmi kohaselt on muutujal ujuk. Kui määrate selle Floatile, kirjutab kompilaator automaatselt Float.valueOf (x) sisemiselt. See on autoboximine. Täht on tüüpi Float. Väärtus 6,1f edastatakse konstruktorile. Kui määrate väärtusele b väärtuse, kirjutab kompilaator a.floatValue () automaatselt sisemiselt. See on lahtipakkimine.
Milline on täisarvu ja ujuki sarnasus?
Nii Integer kui ka Float on Java-vormingus pakendiklassid
Mis vahe on täisarvul ja ujukil?
Erinev artikkel keskel enne tabelit
Tervik vs ujuk |
|
Täisarv on klass, mis mähib objektis primitiivse tüübi int väärtuse. | Ujuk on klass, mis ümbritseb objektis primitiivse tüüpi ujuki väärtust. |
Seotud ürgandmete tüüp | |
Integer on int andmetüübiga seotud ümbrisklass. | Ujuk on ujukandmetüübiga seotud ümbrisklass. |
Kokkuvõte - täisarv vs ujuk
Javas on kaheksa peamist primitiivset tüüpi. Need on int, lühikesed, baidid, pikad, boolean, char, float ja double. Mõnikord tuleb primitiivsed andmetüübid teisendada objektiks ja objekt primitiivseteks. Selleks kasutatakse ümbriste klasse. Igal primitiivsel tüübil on vastav ümbrisklass. Need pakendiklassid on täisarv, lühike, bait, pikk, tõeväärtus, söe, ujuk ja topelt. Selles artiklis käsitleti erinevust täisarvu ja ujuki vahel. Erinevus täisarvu ja ujuki vahel on see, et täisarv on ümbriseklass, mis on seotud int primitiivse andmetüübiga, samas kui ujuk, on ujukprimitiivse andmetüübiga seotud mähkimisklass.