Problem:
Die Java-Kompilierungsmeldung „Inkompatible Typen: void kann nicht konvertiert werden.“ konvertiert in ...“ zeigt an, dass der Compiler einen Typfehler im Zusammenhang mit dem Typ void erkannt hat. Konkret bedeutet dies, dass Ihr Code versucht, das Ergebnis einer Methode zu verwenden, die keinen Wert zurückgibt.
Detaillierte Erklärung:
Der void-Typ, anders als primitiv oder Referenztypen, bedeutet das Fehlen eines Werts. Es wird hauptsächlich in Methodendeklarationen verwendet, um anzuzeigen, dass die Methode keinen Wert zurückgibt. Wenn Sie eine solche Methode aufrufen, können Sie nicht erwarten, dass sie einen Wert zurückgibt, den Sie verwenden können.
Beispiel:
Bedenken 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); } }
Beim Kompilieren dieses Codes erhalten Sie die folgende Fehlermeldung:
error: incompatible types: void cannot be converted to int int sum = add(1, 1); ^
Diese Fehlermeldung zeigt an, dass Sie es versuchen Weisen Sie das Ergebnis der Add-Methode, das ungültig ist, einer int-Variablen zu. Allerdings stellt void keinen Wert dar und kann daher keiner Variablen irgendeines Typs zugewiesen werden.
Lösung:
Um diesen Fehler zu beheben, können Sie entweder:
Das obige ist der detaillierte Inhalt vonWarum gibt Java den Fehler „Inkompatible Typen: void kann nicht konvertiert werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!