Beheben Sie den Fehler `Int kann nicht dereferenziert werden` in Java

Muhammad Zeeshan 12 Oktober 2023
  1. Dereferenzierung in Java
  2. Ursache für int kann nicht dereferenziert werden in Java
  3. Beheben Sie den Fehler int kann nicht dereferenziert werden in Java
Beheben Sie den Fehler `Int kann nicht dereferenziert werden` in Java

In diesem Artikel besprechen wir die Ursache der Java-Ausnahme int kann nicht dereferenziert werden und wie sie behoben werden kann. Sehen Sie sich zunächst an, was Dereferenzierung in Java ist.

Dereferenzierung in Java

Primitive und Objektvariablen sind die zwei Arten von Variablen, die in Java verwendet werden können. Referenztypen können jedoch nur Objektvariablen sein. Der int-Datentyp ist eher ein Primitiv als ein Objekt.

Der Zugriff auf den Wert, auf den durch eine Referenz verwiesen wird, wird als Dereferenzierung bezeichnet. Es ist unmöglich, int zu dereferenzieren, da es sich bereits um einen Wert und nicht um einen Verweis auf etwas anderes handelt.

Ursache für int kann nicht dereferenziert werden in Java

  1. Eine Referenz in Java ist eine Adresse, die auf ein bestimmtes Objekt oder eine Variable zeigt. Der Begriff Dereferenzierung bezieht sich auf das Abrufen der Eigenschaften eines Objekts durch eine Referenz.
  2. Wenn Sie versuchen, eine Dereferenzierung auf einem Primitiv durchzuführen, wie im folgenden Beispiel, erhalten Sie den Fehler Z kann nicht dereferenziert werden, wobei Z ein Typ ist, der als primitiv gilt.
  3. Der Grund dafür ist, dass Primitive nicht dasselbe sind wie Objekte; stattdessen sind sie Rohwertdarstellungen.

Beheben Sie den Fehler int kann nicht dereferenziert werden in Java

Lassen Sie uns verstehen, int kann nicht dereferenziert werden und finden Sie heraus, wie Sie es mit Hilfe des folgenden Beispiels beheben können:

Beispiel:

public class Main {
  public static void main(String[] args) {
    int Z = 8;
    System.out.println(Z.equals(8));
  }
}

Zuerst haben wir die Klasse Main erstellt und ein int mit einem zufällig gewählten Wert verglichen. Z ist einer der acht grundlegenden Datentypen von Java, darunter int, byte, short usw.

Wir sehen den folgenden Fehler, wenn wir versuchen, den Code zu kompilieren:

Main.java:5: error: int cannot be dereferenced
System.out.println(Z.equals(8));
                    ^
1 error

In unserem Fall müssen wir feststellen, ob die beiden Werte gleich sind oder nicht. Die Lösung unseres Problems besteht darin, die Notation == anstelle der Funktion equals() für primitive Typen zu verwenden:

public class Main {
  public static void main(String[] args) {
    int Z = 8;
    System.out.println(Z == 8);
  }
}

Die folgende Ausgabe wird gedruckt, wenn wir den Code kompilieren:

true
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

Verwandter Artikel - Java Error