Heim >Java >javaLernprogramm >Warum wirft Java „Inkompatible Typen: void kann nicht in … konvertiert werden' aus?
Inkompatible Typen verstehen: Void kann nicht konvertiert werden
Die Java-Compiler-Fehlermeldung „Inkompatible Typen: Void kann nicht konvertiert werden in …“ weist auf einen Versuch hin, eine Methode, die keinen Wert zurückgibt, auf eine Weise zu verwenden, die einen Rückgabewert erfordert.
Was bewirkt Void Mean?
Void ist ein einzigartiger Typ in Java, der „kein Wert“ bedeutet. Als ungültig deklarierte Methoden geben kein Ergebnis zurück.
Fehlerursachen
Dieser Fehler tritt auf, wenn:
So beheben Sie den Fehler
Die Lösung hängt vom gewünschten Verhalten ab:
Detailliertes Beispiel
Beachten Sie den folgenden Code:
public class Test { private static void add(int a, int b) { int res = a + b; } public static void main(String[] args) { int sum = add(1, 1); } }
Wann Kompiliert führt dieser Code zu folgendem Fehler:
error: incompatible types: void cannot be converted to int
Dies liegt daran, dass die Add-Methode als ungültig deklariert ist, der Aufruf in der Hauptmethode jedoch versucht, ihren Rückgabewert einer int-Variablen zuzuweisen. Um dies zu beheben:
private static int add(int a, int b) { int res = a + b; return res; }
public static void main(String[] args) { add(1, 1); }
Das obige ist der detaillierte Inhalt vonWarum wirft Java „Inkompatible Typen: void kann nicht in … konvertiert werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!