Heim > Java > javaLernprogramm > Hauptteil

Java-Tutorial – Der Unterschied zwischen Int und Integer

高洛峰
Freigeben: 2016-12-02 16:22:39
Original
1932 Leute haben es durchsucht

Lassen Sie uns zunächst über den Unterschied zwischen int und Integer sprechen:

int ist der grundlegende Datentyp und Integer ist die Wrapper-Klasse von int. Hinweis: Letzteres hat den Typ „Klasse“. Beispielsweise hat List bei Verwendung von Generika den Anfangswert 0 und die Ganzzahl ist null.

Sehen Sie sich das konkrete Beispiel unten an:

package syswar.cc;

public class IntegerCompare {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Integer a1 = 2;
        Integer a2 = 2;

        Integer b1 = 150;
        Integer b2 = 150;

        Integer c1 = new Integer(2);
        Integer c2 = new Integer(2);

        Integer d1 = new Integer(150);
        Integer d2 = new Integer(150);

        System.out.println("a1==a2?" + (a1==a2));
        System.out.println("b1==b2?" + (b1==b2));
        System.out.println("c1==c2?" + (c1==c2));
        System.out.println("d1==d2?" + (d1==d2));
    }

}
Nach dem Login kopieren

Laufendes Ergebnis:

Warum ist dieses Ergebnis? Vergleichen wir zunächst die beiden Gruppen a und b. Bei der Initialisierung werden die Integer-Objektdaten zwischengespeichert. Die diesen Integer-Objekten entsprechenden int-Werte liegen im Bytebereich, also [-128,127].
a1==a2?true
b1==b2?false
c1==c2?false
d1==d2?false>
Nach dem Login kopieren

Wenn Sie Integer einen int-Wert direkt zuweisen und der Wertebereich [-128.127] beträgt, ruft Integer das Integer-Objekt direkt aus dem Cache ab. Wenn der direkt zugewiesene int-Wert daher in [-128.127] liegt, das Integer-Objekt für dasselbe Objekt.

Das durch die neue Methode erhaltene Integer-Objekt ist ein Objekt, das direkt aus dem Heap zugewiesen wird. Daher ist das Ergebnis der ==-Beurteilung falsch

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage