Return Problem

Kilinat

Aktives Mitglied
Hallo Community :)

Bin gerade dabei ein Tool zu schreiben, mit welchem man selbst ein bischen lernen kann, in dem man selbst Fragen hinzufügen kann, und über diese Fragen auch wieder abgefragt werden kann.

Ich realisiere das ganze mit einem FileWriter und schreibe eine Struktur in eine Textdatei (Frage"/"Antwort) und lese dann auch so wieder aus. Nur habe ich beim Auslesen ein Problem mit dem return. Ich poste einfach mal die Methode.

Java:
public Frage lesen(){
		String splitArray[];
		try {
			BufferedReader reader = new BufferedReader(new FileReader("fragen.txt"));
			String zeile = reader.readLine();
			splitArray = zeile.split("/");
			Frage frage1 = new Frage(splitArray[0], splitArray[1]);
			return frage1;
			
		}catch (IOException ex) { ex.printStackTrace(); }
		
	}

Jetzt sagt mir aber die Methode folgendes: this method must return a result of type Frage

Hoffe ihr könnt mir helfen :)
MfG Kilinat
 

Crian

Top Contributor
Deine Funktion gibt nicht in jedem Fall etwas zurück (wenn eine Exception auftritt, nämlich nicht).

Eine mögliche Lösung wäre:

Java:
public Frage lesen() {
     Frage frage1 = null;
     String splitArray[];
     try {
         BufferedReader reader = new BufferedReader(new FileReader("fragen.txt"));
         String zeile = reader.readLine();
         splitArray = zeile.split("/");
         frage1 = new Frage(splitArray[0], splitArray[1]);
    }
    catch (IOException ex) {
        ex.printStackTrace();
    }
        
    return frage1;
}

Dann muss die aufrufende Stelle aber damit rechnen, dass ein null-Wert zurückgegeben werden kann. Falls du das nicht möchtest, kannst du frage1 natürlich mit irgendwas anderem initialisieren. Etwa
Code:
Frage frage1 = new Frage("Dummyfrage", "Dummyantwort");
. Ob das schöner ist, musst du entscheiden.

Alternativ fängst du den Fehler nicht hier ab, sondern kümmerst dich an der Stelle darum, wo diese Funktion aufgerufen wird. Auch diese Entscheidung liegt bei dir.

Dann sieht der Code hier wesentlich übersichtlicher aus, dafür muss du dich an anderer Stelle darum kümmern (wo dies aber u.U. auch besser möglich ist). Das sind Designentscheidungen, die dir vermutlich niemand abnehmen kann.

Java:
public Frage lesen() throws IOException {
    BufferedReader reader = new BufferedReader(new FileReader("fragen.txt"));
    String zeile = reader.readLine();
    String[] splitArray = zeile.split("/");
    Frage frage = new Frage(splitArray[0], splitArray[1]);
    return frage;
}
 
Zuletzt bearbeitet:

Haave

Top Contributor
Am Ende der Methode steht kein return. Es könnte ja sein, dass der try-Block nicht zuende ausgeführt wird, dann wird auch nichts zurückgegeben. Versuch mal, frage1 vor dem try-Block zu deklarieren (also
Code:
Frage frage1;
) und dann hinter dem catch-Block
Code:
return frage1;
zu machen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
B Variablen Problem mit return String[] Java Basics - Anfänger-Themen 4
K Erste Schritte "return" Problem bei Rekursion Java Basics - Anfänger-Themen 8
M Problem mit boolean. Return nicht erkannt Java Basics - Anfänger-Themen 10
V Problem mit return Java Basics - Anfänger-Themen 7
A Datentypen problem return aus try-block Java Basics - Anfänger-Themen 4
B problem mit der return anweisung Java Basics - Anfänger-Themen 11
P return-Problem Java Basics - Anfänger-Themen 3
J Verständnis Problem mit return --> Klausuraufgabe Java Basics - Anfänger-Themen 4
M Problem mit return Wert Java Basics - Anfänger-Themen 5
G return Problem Java Basics - Anfänger-Themen 6
D return Problem. Java Basics - Anfänger-Themen 3
L Problem mit 2 Methoden // return? Java Basics - Anfänger-Themen 8
megachucky Kleines Problem mit dem "return" einer Methode. Java Basics - Anfänger-Themen 11
MiMa Java Doc mehrere Return Parameter Java Basics - Anfänger-Themen 11
A Return in While Schleife Java Basics - Anfänger-Themen 6
J Rekursive Funktion und return statement Java Basics - Anfänger-Themen 3
M Warum return die Methode den Wert nicht Java Basics - Anfänger-Themen 5
S Methoden Return Rückgabewert wird nicht übergeben Java Basics - Anfänger-Themen 8
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
I Return Array Java Basics - Anfänger-Themen 4
Q return Ausgabe Java Basics - Anfänger-Themen 4
javapingu Variablenwerte ändern ohne return Statement? Java Basics - Anfänger-Themen 7
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
G return 1 + methode Java Basics - Anfänger-Themen 4
H Methode mit Array als Rückgabe This method must return a result of Type int[] Java Basics - Anfänger-Themen 2
JD_1998 Hilfsmethode if return funktioniert nicht Java Basics - Anfänger-Themen 2
J Missing Return Statement Java Basics - Anfänger-Themen 11
T Return einer anderen Methode herausfinden Java Basics - Anfänger-Themen 9
C ArrayList mit return zurückgeben Java Basics - Anfänger-Themen 13
M kann man return in nur einer Methode einsetzen? Java Basics - Anfänger-Themen 7
V return String[] führt zu [Ljava.lang.String;@50675690 Java Basics - Anfänger-Themen 7
K Return in Schleife Java Basics - Anfänger-Themen 4
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
S Missing return Java Basics - Anfänger-Themen 4
das_leon return message Java Basics - Anfänger-Themen 2
C return kann nicht auf variable zugreifen Java Basics - Anfänger-Themen 26
N Ausführung gibt keinen Fehler an, Return wird aber nicht ausgegeben Java Basics - Anfänger-Themen 22
R return: cannot find symbol Java Basics - Anfänger-Themen 2
R Ratespiel mit Return und einer Eingabe Java Basics - Anfänger-Themen 1
Z Return in While-Schleife Java Basics - Anfänger-Themen 7
N Frage zu this, super und return Java Basics - Anfänger-Themen 13
K ArrayList ausgeben mit return Java Basics - Anfänger-Themen 6
M Return statement Java Basics - Anfänger-Themen 4
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
J Variablen Komsiche System.in.read() return-value? Java Basics - Anfänger-Themen 3
M Abbrechen Methode ohne return Java Basics - Anfänger-Themen 3
M Methoden Datei einlesen und als return übergeben. Java Basics - Anfänger-Themen 8
L OOP Return Java Basics - Anfänger-Themen 10
L Erste Schritte Frage zu 'return' Java Basics - Anfänger-Themen 4
J Methoden Rekursive Return Methode Java Basics - Anfänger-Themen 2
W Return statement in Methode nur bei if-clause Java Basics - Anfänger-Themen 3
D Methoden Return-Wert wird nicht ausgegeben Java Basics - Anfänger-Themen 3
F Return-Anweisung Java Basics - Anfänger-Themen 2
E Erste Schritte <? super Unterklasse> Return-Typ darf nicht vom Wildcard-Typ sein Java Basics - Anfänger-Themen 5
B OOP Methode mit Array mit return verlassen Java Basics - Anfänger-Themen 8
J Grundsätzliche Frage zu return Types in Methoden Java Basics - Anfänger-Themen 6
G return-wert für eine Methode Java Basics - Anfänger-Themen 1
B Methoden Probleme mit for Schleife und return Java Basics - Anfänger-Themen 5
Q Tastatureingabe direkt nach Eingabe (ohne zwischenzeitliches "Return" o.Ä ) weiterverwenden Java Basics - Anfänger-Themen 1
O Per return Run Methode beenden Java Basics - Anfänger-Themen 3
M Arrays als return Value? Java Basics - Anfänger-Themen 2
C Return statement Java Basics - Anfänger-Themen 10
T Boolean Missing return Statement?! Java Basics - Anfänger-Themen 2
Z Methoden return nullprüfung Java Basics - Anfänger-Themen 7
O Java return in Schleife Java Basics - Anfänger-Themen 4
K Was macht hier genau return? Java Basics - Anfänger-Themen 2
G Methoden Was bedeutet return in einer Methode Java Basics - Anfänger-Themen 5
Y Warum void statt Datentyp + return Java Basics - Anfänger-Themen 4
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
R If Verschachtelung und return; Java Basics - Anfänger-Themen 4
M Frage zum return; Befehl Java Basics - Anfänger-Themen 1
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
C Einige Anfängerfragen (Return-Wert, Exception...) Java Basics - Anfänger-Themen 11
S Methoden Return Java Basics - Anfänger-Themen 8
T return-Wert verwenden? Java Basics - Anfänger-Themen 12
T Return eines Int-Werts? Java Basics - Anfänger-Themen 3
W return-Anweisung gibt nichts aus Java Basics - Anfänger-Themen 5
R Return in If Java Basics - Anfänger-Themen 10
S Methoden Return Anweisung beendet Methode nicht, stattdessen wird diese zweimal durchlaufen Java Basics - Anfänger-Themen 3
G array return methode Java Basics - Anfänger-Themen 10
L return wird nicht erkannt? Java Basics - Anfänger-Themen 3
J Regex mit Return Java Basics - Anfänger-Themen 3
M Variablen return-array klonen Java Basics - Anfänger-Themen 3
A Methode mit Array als Param --> return Array --> Fehler Java Basics - Anfänger-Themen 3
S Zeichen einlesen ohne Return? Java Basics - Anfänger-Themen 19
P Compiler-Fehler Boolean: Missing Return Statement Java Basics - Anfänger-Themen 4
S probleme mit der return anweisung Java Basics - Anfänger-Themen 20
E Warum wird Methode nicht durch return-Befehl beendet? Java Basics - Anfänger-Themen 3
V Erste Schritte Return ohne Argument Java Basics - Anfänger-Themen 6
I Methoden Missing return statement; Intervallschachtellung Java Basics - Anfänger-Themen 12
S Frage zu Vererbung und return. Java Basics - Anfänger-Themen 4
R return (mehrere floats) Java Basics - Anfänger-Themen 11
E Return String Java Basics - Anfänger-Themen 10
P Methoden Methode ohne return abbrechen? Java Basics - Anfänger-Themen 12
I Return Befehl in Methode Java Basics - Anfänger-Themen 13
P Return aus For-Schleife Java Basics - Anfänger-Themen 19
S return in GUI ? Java Basics - Anfänger-Themen 12
M This method must return a result of type int Java Basics - Anfänger-Themen 13
F Erste Schritte return (char)toUnsignedInt(value) Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben