Auf Thema antworten

Hallo Leute,

vielleicht kann mir einer ja bei folgendem Problem helfen. Aus einem String bzw. file-datei soll mittels Scanner-Objekt-Übergabe die Anzahl der vorhandenen Großbuchstaben des Strings festgestellt und zurückgegeben werden.

Problem ist, dass er stets nur die Anzahl an Großbuchstaben des zweiten! Wortes wiedergibt  :( Ich hab auch bereits verschiedene Strings durchprobiert, sodass ich vermute, dass das Problem beim Scanner-Objekt liegt?!? ..da die Methode auch nur mit String-Übergabe korrekt funktioniert.

Beim Versuch, aus den mehreren Zeichenketten eine zusammengesetzte Zeichenkette zu übergeben, zeigt er mir ferner dann folgende Fehlermeldung an:


Exception in thread "main" java.util.NoSuchElementException

    at java.util.Scanner.throwFor(Unknown Source)

    at java.util.Scanner.next(Unknown Source)

    at pr1.a10.StringUtil.getUpperCaseCount(StringUtil.java:14)

    at pr1.a10.StringUtil.main(StringUtil.java:8)



Vielen Dank schon mal für jegliche Hilfe!



[code=Java]main[/I]

...

String k = "HAllo &Welt!!ist((() 33443Doch LANGWEILIG kk KLL";

...

Scanner in = new Scanner (k);

...

getUpperCaseCount (in);

System.out.println("Die Anzahl der Großbuchstaben beträgt " +getUpperCaseCount(in));

...        

in.close();



public static int getUpperCaseCount(Scanner in) {    

  String wort = in.next();    

    String großAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

    int upperCaseCounter = 0;

    

    for (int x = 0; x < wort.length(); x++) {                        

        for (int y = 0; y < großAlphabet.length(); y++) {            

            if (wort.charAt(x) == großAlphabet.charAt(y)) {    

            upperCaseCounter++;                

            }                

        }

    }

    return upperCaseCounter;

    }[/code]



Oben