Empfohlen, 2024

Tipp Der Redaktion

Unterschied zwischen int und long

Die Datentypen int und long gehören zu den zwei in Java beschriebenen Integer-Datentypen. In Java sind die Typen int und long vorzeichenbehaftet, + ve und -ve Werte. Java unterstützt keine vorzeichenlosen int- und long-Typen. Der grundlegende Unterschied zwischen einem int- und einem langen Datentyp ist die Breite jedes Typs. Der Datentyp int hat die Breite von 32 Bit für die Variable vom Typ int. Auf der anderen Seite hat der Datentyp long die Breite von 64 Bit für die Variable vom Typ long. Die folgende Vergleichstabelle zeigt einige andere Unterschiede zwischen int und long.

Vergleichstabelle

Vergleichsgrundlageintlange
BasicDer Datentyp int besteht aus 32 Bit.Der Datentyp long umfasst 64 Bit.
BytesWenn in Bytes gezählt wird, beträgt int 4 Bytes.Wenn in Bytes gezählt, sind 8 Bytes lang.
AngebotIn Java liegt der Bereich des Typs int zwischen –2.147.483.648 und 2.147.483.647.In Java ist der Bereich von long lang
–9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807.
StichwortDas für die Deklaration einer Variablen vom Typ int verwendete Schlüsselwort ist "int".Das für die Deklaration einer langen Variablen verwendete Schlüsselwort ist "long".
ErinnerungDer zum Speichern einer int-Variablen erforderliche Speicherplatz ist geringer als lang.Der zum Speichern einer langen Variablen erforderliche Speicher ist größer als bei int.

Definition des Int-Typs

Ein Datentyp int ist ein am häufigsten verwendeter Datentyp, der einen ganzzahligen Wert enthält. Ein Wert, den eine int-Variable enthalten kann, ist nicht zu kurz und nicht zu lang. Im Allgemeinen wird der Wert einer int-Variablen als Schleifenvariable verwendet, die die Schleife steuert, oder als Indexvariable eines Arrays. Byte und short des Datentyps haben im Vergleich zum Datentyp int einen kürzeren Bereich, können aber int nicht ersetzen, auch wenn der Wert einer int-Variablen einen kürzeren Bereich hat. Der Grund dafür ist, dass, wenn wir in einem Ausdruck Datentyp byte und short verwenden, der Datentyp byte und short vom Compiler während der Auswertung dieses Ausdrucks zu int heraufgestuft werden. Aus diesem Grund kann man sagen, dass es besser ist, int zu verwenden, wo immer eine ganze Zahl benötigt wird.
Lassen Sie uns einen Blick auf die Verwendung des int-Datentyps werfen.

 Byte a = 70; Byte b = 80; int c = a * b; //kein Fehler. Byte d = a + 10; // Fehler beim Kompilieren. 

Wie Sie im obigen Code beobachten können, sind die beiden Byte-Variablen a und b, die die Werte 70 und 80 enthalten, ein gültiger Byte-Range-Wert. Aber das Zwischenergebnis von a * b; überschreitet die Grenze des Bytes. Der Compiler befördert daher automatisch die Byte-, Short- und Char-Variablen zum Typ int, wenn sie in einem Ausdruck verwendet werden. Nun können Sie sehen, dass das Ergebnis von a * b einer int-Variablen zugewiesen wird, die keinen Fehler verursacht und problemlos kompiliert wird, da die Variablen a und b zum Typ int und die Zuordnung des Typs int zum Typ int doesn 'erhöht wird. t den Fehler verursachen.

In der letzten Codezeile können Sie einen Ausdruck sehen, bei dem der Wert 10 zu einer Byte-Variablen 'a' addiert wird. Das Ergebnis überschreitet jedoch nicht die Grenze des Bytes. Die Zuweisung des Zwischenergebnisses des Ausdrucks "a + 10" zur Byte-Variablen 'd' verursacht jedoch einen Fehler bei der Kompilierzeit, da die Byte-Variable 'a' der Ausdrucksauswertung zum Typ int heraufgestuft wird. Die Zuweisung des Typs int zu Typbyte ist nicht zulässig. Daher verursacht es einen Fehler beim Kompilieren.

Definition des langen Typs

Der Datentyp long hat den größten Bereich und die größte Breite im Vergleich zu Byte-, Short- und Int-Typen. In Java ist der Typ long ein 64-Bit-Integer-Typ mit Vorzeichen. Der Typ long wird verwendet, wenn der Typ int nicht so groß ist, um den gewünschten Wert aufzunehmen. Der Bereich von long reicht von –9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807, was ziemlich groß ist, um die größeren Werte wie große ganze Zahlen zu halten. Wir können den Typ anhand eines Beispiels lange verstehen.

 Klassengewicht {public static void main (String args []) {int item; int wt_per_item; lange Gramm; lange Box; item = 10000000; // Anzahl Elemente angeben wt_per_item = 10000; // Gewicht eines Artikels in Kilogramm Gramm angeben = wt_item * 1000; // Gewicht in Gramm umwandeln Box = Artikel * Gramm; // Gewicht der Box in Gramm berechnen System.out.println ("Number of item" + item); System.out.println ("Gewicht pro Artikel" + wt_per_item + "Kilos"); System.out.println ("Gewicht der Box in Gramm" + Box + "Kilos"); }} Anzahl der Artikel 10000000 Gewicht pro Artikel 10000 kg Gewicht der Schachtel in Gramm 100000000000000 kg 

Beachten Sie die Ausgabe im obigen Code. das errechnete Ergebnis für das Gewicht der gesamten Schachtel, die eine Schachtel mit 10000000 Artikeln enthielt, wovon pro Artikel 10000 Kilogramm wiegen Der berechnete Wert für das Gewicht der Box in Gramm kann nicht von einer int-Variablen gehalten werden. Daher ist es manchmal notwendig, einen langen Typ zu verwenden, wenn große Werte berechnet oder gehalten werden sollen.

Hauptunterschiede zwischen int und long

  1. Der grundlegende Unterschied zwischen dem Typ int und long ist ihre Breite, wobei int 32 Bit und Long 64 Bit beträgt.
  2. Die Typen int und long, wenn in Bytes anstelle von Bits gezählt wird, ist der Typ int 4 Bytes und der Typ long ist nur zweimal, wenn der Typ int 8 Byte ist.
  3. In Java reicht der Bereich des Typs int von –2.147.483.648 bis 2.147.483.647, wohingegen der Typ long von –9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 reicht, was sehr viel größer als der Typ int ist.
  4. Das Schlüsselwort, mit dem eine Variable vom Typ int deklariert wird, lautet „int“. Auf der anderen Seite ist das Schlüsselwort, mit dem die Variable vom Typ long deklariert wird, "long".
  5. Im Allgemeinen ist der Speicher, der erforderlich ist, um den Wert des Typs int zu halten, im Vergleich zu long geringer.

Fazit:

Wenn Sie Code schreiben, wenn ein Wert für den mittleren Bereich erforderlich ist, können Sie den Typ int verwenden. Wenn jedoch die von einem Ausdruck erzeugte Ausgabe größer ist oder die größeren Werte zur Berechnung verwendet werden, muss die Variable long type verwendet werden die Werte.

Top