Különbség az int és a hosszú között

Szerző: Laura McKinney
A Teremtés Dátuma: 1 Április 2021
Frissítés Dátuma: 15 Lehet 2024
Anonim
Különbség az int és a hosszú között - Technológia
Különbség az int és a hosszú között - Technológia

Tartalom


Az int és a hosszú adattípusok a Java-ban leírt két egész számtípus közé tartoznak. A Java-ban az int és a long típusok vannak aláírva, + ve és -ve értékek. A Java nem támogatja az alá nem írt int és a hosszú típusokat. Az int és a hosszú adattípus közötti alapvető különbség az egyes típusok szélessége. Az int adattípus szélessége 32 bites az int típusú változó számára. Másrészt a hosszú adattípus szélessége 64 bites a hosszú típusú változó számára. Az alábbi összehasonlító táblázat néhány különbséget mutat az int és a hosszú között.

  1. Összehasonlító táblázat
  2. Meghatározás
  3. Főbb különbségek
  4. Következtetés

Összehasonlító táblázat

Az összehasonlítás alapjaint hosszú
AlapvetőAz int adattípus 32 bites.A hosszú adattípus 64 bit.
bytesBájtokban számolva, az int 4 bájt.Bájtokban számolva, akkor hosszú a 8 bájt.
HatótávolságA Java-ban az int típus tartománya –2 147 483 648–2 147 483 647.A Java-ban a hosszú típus tartománya
–9,223,372,036,854,775,808 - 9,223,372,036,854,775,807.
KulcsszóAz int típusú változó deklarálásához használt kulcsszó "int".A hosszú típusú változó deklarálásához használt kulcsszó "hosszú".
memóriaAz int változó tárolásához szükséges memória kevesebb a hosszúhoz képest.A hosszú változó tárolásához szükséges memória nagyobb, mint az int.


Az int típus meghatározása

Az int adattípus a leggyakrabban használt adattípus, amely egész számot tartalmaz. Az az érték, amelyet egy int változó képes tartani, nem túl rövid és nem túl hosszú. Általában az int változó értékét használjuk hurok-változóként, amely vezérli a hurkot, vagy egy tömb index változójaként. Az adattípus bájt és a rövid rövidebb tartományban vannak, mint az int adattípus, de nem helyettesíthetik az int-et, még akkor sem, ha az int változó értéke rövidebb tartományba tartozik. Ennek oka az, hogy ha egy kifejezésben adattípusú és rövid kifejezést használunk, akkor a kifejezés értékelésekor az összetett fordító elősegíti az adattípus bájtot és a rövidt. Tehát ebből elmondható, hogy jobb az int használata, ahol egész számra van szükség.
Vessen egy pillantást az int adattípus használatára.


bájt a = 70; bájt = 80; int c = a * b; // nincs hiba. d byte = a + 10; // Összeállítási időhiba.

Amint az a fenti kódban megfigyelhető, a két, a és b bájtváltozó 70 és 80 értéket tartalmaz, amely érvényes byte-tartományban van. De a * b közbenső eredménye; meghaladja a bájt korlátját. Ezért a fordító automatikusan elősegíti a byte, a short és a char változókat az int beírásához, ha kifejezésben használják őket. Most láthatja, hogy egy * b eredményét hozzárendelik egy int változóhoz, amely nem okoz hibát, és zökkenőmentesen áll össze, mert az a és b változókat előmozdítják az int típushoz, és az int típus hozzárendelését az int típushoz nem ' t okozzák a hibát.

A kód utolsó sorában egy kifejezést láthat, ahol a 10-es értéket hozzáadják az 'a' bájtváltozóhoz, annak eredménye még mindig nem haladta meg a bájt korlátját. Az „a + 10” kifejezés közbenső eredményének a „d” bájtváltozóhoz való hozzárendelése azonban fordítási időbeli hibát okoz, mivel míg az „a” kifejezés értékelési bájtváltozóját az int típus támogatja. És az int típus hozzárendelése a típus byte-hoz nem engedélyezett. Ezért fordítási idő hibát okoz.

A hosszú típus meghatározása

A hosszú adattípus a legnagyobb tartomány és szélességű a bájt, a rövid és az int típushoz képest. A Java-ban a hosszú típus 64 bites aláírt egész szám. A hosszútípust akkor használják, ahol az int típus nem olyan nagy a kívánt érték megtartásához. A hosszú tartomány –9,223,372,036,854,775,808 és 9,223,372,036,854,775,807 között van, ami elég nagy ahhoz, hogy megtartsa a nagyobb értékeket, mint például a nagy egész számok. Az alábbiakban példával megérthetjük a típust.

osztály súlya {nyilvános statikus void main (karakterláncok) {int elem; int wt_per_item; hosszú gramm; hosszú doboz; tétel = 10000000; // adja meg a tételeket wt_per_item = 10000; // adja meg az elem tömegét kilogrammban grammban = wt_item * 1000; // tömeg konvertálása grammba Box = elem * gramm; // a doboz súlyának kiszámítása grammban System.out.ln ("Cikk száma" + elem); System.out.ln ("Egy tétel tömege" + wt_per_item + "kiló"); System.out.ln ("A doboz súlya grammban" + Doboz + "kiló"); }} Cikkszám 10000000 Tétel / tétel tömeg 10000 kiló Doboz súlya grammban 100000000000000 kiló

Vegye figyelembe a fenti kódot; az eredmény a teljes doboz tömegére kiszámítva, amelyben 10000000 darab dobozt tartalmaz, amelyegységenként darabszám 10000 kg. A doboz súlyának számított értékét grammban nem tarthatja meg egy int változó. Ezért néha szükségessé válik hosszú típus használata, amikor nagy értékeket kell kiszámítani vagy megtartani.

  1. Az int és a hosszú típus közötti alapvető különbség szélessége, ahol az int 32 bites, a hosszú pedig 64 bit.
  2. Az int és a hosszú típusok, ha bitekben számolják a bitek helyett, az int típus 4 bájt, a hosszú típus pedig csak kétszer, ha az int típus, azaz 8 bájt.
  3. A Java-ban az int típus tartománya –2 147,483,648 és 2,147,483,647, míg a hosszú típus tartomány –9,223,372,036,854,775,808 és 9,223,372,036,854,775,807 között van, ami jóval nagyobb, mint az int típus.
  4. Az int típusú változó deklarálásához használt kulcsszó „int”. Másrészt a hosszú típusú változó deklarálásához használt kulcsszó „hosszú”.
  5. Általában az int típusú érték megtartásához szükséges memória kevesebb, mint a hosszú.

Következtetés:

Kód írásakor, ha közepes tartományú értékre van szükség, akkor használhatja az int típust, de ha bármelyik kifejezés által előállított kimenet nagyobb lesz, vagy a nagyobb értékeket használják a számításhoz, akkor a hosszú típusú változót kell tartani az értékek.