Rekommenderas, 2024

Redaktionen

Skillnad mellan int och lång

Datatyperna int och långa är bland de två heltaldatatyper som beskrivs i Java. I Java signeras typerna int och långa, + ve och -ve-värden. Java stöder inte osignerade int och långa typer. Den grundläggande skillnaden mellan en int och lång datatyp är bredden på varje typ. Datatypen int har en bredd på 32-bit för variabeln av int-typen. Å andra sidan har datatypen lång bredden på 64 bit för variabeln av lång typ. Jämförelsetabellen nedan visar några andra skillnader mellan int och långa.

Jämförelsediagram

Grunder för jämförelseintlång
GrundläggandeDatatypen int är 32 bitar.Den långa datatypen är 64 bitar.
bytesOm räknas i byte är int 4 byte.Om räknas i byte är lång 8 bitar.
RäckviddI Java är intervallet av typ int -2, 147, 483, 648 till 2, 147, 483, 647.I Java är sortimentet av typ långt
-9, 223, 372, 036, 854, 775, 808 till 9, 223, 372, 036, 854, 775, 807.
NyckelordNyckelord som används för att deklarera en variabel av int-typen är "int".Nyckelord som används för att deklarera en variabel av lång typ är "lång".
MinneMinnet som krävs för att lagra en int-variabel är mindre jämfört med lång.Minnet som krävs för att lagra en långvariabel är större jämfört med int.

Definition av int typ

En datatyp int är en vanligast datatyp som innehåller ett heltal i det. Ett värde som en int-variabel kan hålla är inte för kort och inte för lång. I allmänhet används värdet för en int-variabel som en slingningsvariabel som styr slingan, eller den används som en indexvariabel för en grupp. Datatypbyte och kort har kortare intervall jämfört med datatyp int, men de kan inte ersätta int, även om värdet på en int-variabel är kortare. Anledningen till detta är att när vi använder datatypbyte och kort i ett uttryck då vi utvärderar det här uttrycket blir datatypbyte och kort främjas till int av kompilatorn. Så det kan sägas att det är bättre att använda int varhelst ett heltal behövs.
Låt oss ta en titt på användningen av int datatyp.

 byte a = 70; byte b = 80; int c = a * b; //inget fel. byte d = a + 10; // Kompilera tidsfel. 

Som du kan observera ovanstående kodar de två byte-variablerna a och b som innehåller värdet 70 och 80, vilket är giltigt byte-värde. Men det mellanliggande resultatet av en * b; överskrider gränsen för byte. Därför främjar kompilatorn automatiskt byte-, kort- och charvariablerna för att skriva int, om de används i ett uttryck. Nu kan du se att resultatet av en * b är tilldelat en int-variabel som inte orsakar något fel och kompilerar smidigt eftersom variablerna a och b främjas till typen int och tilldelning av typ int till typen int gör inte ' t orsaka felet.

I den sista raden av kod kan du se ett uttryck, där värdet 10 läggs till en byte-variabel "a", har resultatet fortfarande inte överskridit gränsen för byte. Men tilldelningen av mellanresultatet av uttrycket "a + 10" till bytevariabeln "d" orsakar ett kompileringstidsfel för att medan uttrycksevalueringsbyte-variabeln "a" förespråks till typen int. Och tilldelning av typ int till typbyte är inte tillåtet. Därför orsakar det ett kompileringstidsfel.

Definition av lång typ

Datatypen lång har det största intervallet och bredden jämfört med byte, kort och int typer. I Java är typen lång 64-bitars signerad heltalstyp. Den typ långa används där typen int inte är så stor att det önskade värdet hålls. Långsområdet är -9.223.372.036.854.775.808 till 9.223.372.036.854.775.807 vilket är ganska stort för att hålla de större värdena som stora heltal. Vi kan förstå typen lång med ett exempel nedan.

 klassvikt {public static void main (string args []) {int item; int wt_per_item; långa gram; lång låda; item = 10000000; // Ange antal objekt wt_per_item = 10000; // Ange vikt för ett objekt i kilogram gram = wt_item * 1000; // konvertera vikt till gram Box = item * gram; // beräkna vikten av rutan i gram System.out.println ("Antal objekt" + objekt); System.out.println ("Vikt per objekt" + wt_per_item + "kilo"); System.out.println ("Vikt av box i gram" + Box + "kilo"); }} Antal objekt 10000000 Vikt per artikel 10000 kilo Vikt av lådan i gram 100000000000000 kilo 

Observera utsignalen i ovanstående kod; resultatet beräknas för vikten av hela lådan innehållande lådan innehållande 10000000 föremål varav per artikel väger 10000 kilo. Det beräknade värdet för vikten av rutan i gram, kan inte hållas av en int-variabel. Därför blir det ibland nödvändigt att använda lång typ när stora värden ska beräknas eller hållas.

Viktiga skillnader mellan int och långa

  1. Den grundläggande skillnaden mellan typen int och lång är av deras bredd där int är 32 bit och lång är 64 bitar.
  2. Typerna int och långa, när de räknas i byte istället för bitar, typen av int är 4 byte och typen lång är bara två gånger om typ int dvs 8 byte.
  3. I Java är intervallet av typ int från -2, 147, 483, 648 till 2, 147, 483, 647, medan intervallet av typen långt är från -9, 223, 372, 036, 854, 775, 808 till 9, 223, 372, 036, 854, 775, 807 vilket är väldigt mycket större än typint.
  4. Nyckelordet som används för att deklarera en variabel av typen int är "int". Å andra sidan är det nyckelord som används för att deklarera variabeln av typen lång är "lång".
  5. I allmänhet är minnet som krävs för att hålla värdet av typen int mindre jämfört med långt.

Slutsats:

Medan du skriver kod om det finns behov av mellannivåvärde kan du använda typen int men när produktionen som produceras av något uttryck blir större eller de större värdena används för beräkning, måste den långa typen variabeln användas för att hålla värdena.

Top