return kann nicht auf variable zugreifen

crysien

Mitglied
Hallo Leute ,
Ich habe ein Problem unszwar bei:

Code:
    public static String quellcodeausgabe () {

        String url= "https://de.wikipedia.org";
        BufferedReader leser2 = null;

        try{   
        leser2 = IO.oeffneInternetUrl (url);
        String quellcode = null;
        while ((quellcode = leser2.readLine()) != null)
        {
            IO.print(zeile2);
        }
        }catch (IOException e)
        {
        IO.println ("Fehler bei URL: " + url);
        System.exit (1);
        }
        return quellcode;
       
    }

Bei "return quellcode " kann quellcode nicht auf den quellcode zugreifen, welches oben in der while Schleife gerade beschrieben wird.

Könnt ihr mir sagen, was Ich hier falsch mache ?
 

mrBrown

Super-Moderator
Mitarbeiter
Die Variable ist innerhalb des try-Blocks deklariert, also ist sie auch nur darin sichtbar.

du müsstest entweder die Deklaration in den gleichen Scope wie das return verschieben, oder das return in den gleichen Scope wie die Deklaration ;)
 

truesoul

Top Contributor
Hallo,

Wo ist denn die Variable "zeile2"?
Und quellcode muss außerhalb des try catch Blocks.
Schon mal den Debugger benutzt?

Grüße
 

crysien

Mitglied
Code:
    public static String quellcodeausgabe () {

        String url= "https://de.wikipedia.org";
        BufferedReader leser2 = null;
        ArrayList<String> liste2 = new ArrayList<>();
        String zeile2 = null;

        try{   
        leser2 = IO.oeffneInternetUrl (url);
        while ((zeile2 = leser2.readLine()) != null)
        {
            //IO.println(zeile2);
        }
       
        }catch (IOException e)
        {
        IO.println ("Fehler bei URL: " + url);
        System.exit (1);
        }

        return zeile2;
    }
   
public static void countWords(String text) {
    int count = 0;
   
    String word = "href";
    Pattern pat = Pattern.compile(Pattern.quote(word));
    Matcher m;
    for (m = pat.matcher(text);
            m.find();
            count++);
    IO.println(count);
       
}
       
    public static void main (String[] args)    {
            dateieinlesen();
            quellcodeausgabe();
            String quellcode = quellcodeausgabe();
            countWords(quellcode);
   
        }
    }


Jetzt habe Ich es zwar mit dem return hingekriegt, aber wenn Ich jetzt nach dem Suchwort "href" in dem Quellcode suchen will , welches nun in zeile2 eingespeichert ist , dann kommt:
Exception in thread "main" java.lang.NullPointerException
at java.util.regex.Matcher.getTextLength(Unknown Source)
at java.util.regex.Matcher.reset(Unknown Source)
at java.util.regex.Matcher.<init>(Unknown Source)
at java.util.regex.Pattern.matcher(Unknown Source)
at testen.countWords(testen.java:71)
at testen.main(testen.java:82)
 

mrBrown

Super-Moderator
Mitarbeiter
Dann ist's Zeit für'n Schreibtischtest - einfach mal per hand die Methode durchgehen und nach jedem Schritt notieren welchen Wert die Variablen haben ;)
 

crysien

Mitglied
zeile2 wird ja zunächst deklariert und anschließend dann im try Block verändert.
Der return Befehl gibt mir also die zeile2 Variable, welche mit null deklariert wurde.
Das ist das was Ich jetzt so rausgelesen habe.
 

crysien

Mitglied
Code:
while ((zeile2 = leser2.readLine()) != null)
Sie hört ja dann auf wenn wenn readLine() = null ist , sprich wenn alles soweit geschrieben wurde.
 

crysien

Mitglied
Ich habe es jetzt mit StringBuffer versucht , also

Da kommt der selbe Fehler. Bin gerade echt am verzweifeln :/


Ich habe auch versucht es mit einer ArrayList zu machen.Da kommt auch NullPointerException als Fehler
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
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
JD_1998 Hilfsmethode if return funktioniert nicht Java Basics - Anfänger-Themen 2
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
N Ausführung gibt keinen Fehler an, Return wird aber nicht ausgegeben Java Basics - Anfänger-Themen 22
D Methoden Return-Wert wird nicht ausgegeben Java Basics - Anfänger-Themen 3
E Erste Schritte <? super Unterklasse> Return-Typ darf nicht vom Wildcard-Typ sein Java Basics - Anfänger-Themen 5
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
S Methoden Return Anweisung beendet Methode nicht, stattdessen wird diese zweimal durchlaufen Java Basics - Anfänger-Themen 3
L return wird nicht erkannt? Java Basics - Anfänger-Themen 3
E Warum wird Methode nicht durch return-Befehl beendet? Java Basics - Anfänger-Themen 3
M Problem mit boolean. Return nicht erkannt Java Basics - Anfänger-Themen 10
R Nach return() der aufgerufenen Methode wird aufrufende Methode nicht weiter ausgeführt Java Basics - Anfänger-Themen 14
R warum liefert ein und dieselbe funktion nicht dasselbe return?? Java Basics - Anfänger-Themen 7
R Return Anweisung übergibt Variablen nicht Java Basics - Anfänger-Themen 4
J return bricht methode nicht ab Java Basics - Anfänger-Themen 12
H Funktion erkennt das return-statement nicht Java Basics - Anfänger-Themen 12
A return funktioniert nicht bzw. wird ignoriert Java Basics - Anfänger-Themen 3
G return funktioniert nicht Java Basics - Anfänger-Themen 7
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
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
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
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
S Missing return Java Basics - Anfänger-Themen 4
das_leon return message Java Basics - Anfänger-Themen 2
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
F Return-Anweisung Java Basics - Anfänger-Themen 2
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
B Variablen Problem mit return String[] Java Basics - Anfänger-Themen 4
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
K Erste Schritte "return" Problem bei Rekursion Java Basics - Anfänger-Themen 8
R If Verschachtelung und return; Java Basics - Anfänger-Themen 4
M Frage zum return; Befehl Java Basics - Anfänger-Themen 1
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
G array return methode Java Basics - Anfänger-Themen 10
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
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
A Falscher Return-Wert Java Basics - Anfänger-Themen 2
M missing return statement?! Java Basics - Anfänger-Themen 4
L Return Fragen Java Basics - Anfänger-Themen 4
I Null als return obwohl datensatz existiert Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben