Java Problem lesen von 'D's?

... komplette Frage anzeigen

1 Antwort

1) Ihre Lösung ruft zuerst if(b.read()... und direkt darauf while(b.read().. auf.

Damit vergleichen Sie den zweiten Buchstaben. Das erste Wort in dem File ist ADA und darum scheitert es bei dem D da es der zweite Buchstabe ist. Das if können Sie komplett weg lassen, da es sowieso bereits vom while vor der Schleife geprüft wird.

2) Das File ist nicht perfekt sortiert. ZB kommt "CMOS" in den Zeilen 9651 und 164734 vor. Ihr Programm liefert jedoch nur den ersten Treffer.

Der folgende Code hat dieses Problem nicht und ist deutlich kürzer:



  try {  Reader  f = new FileReader("Wortliste.txt");  BufferedReader b = new BufferedReader(f); 
while (b.ready()) { final String line = b.readLine(); if (line.charAt(0) == a) { WListe.add(line); }
}




Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von BenStudio
18.11.2015, 22:18

Vielen Dank, hat mir sehr geholfen und auch der neue Code ist deutlich besser und einfacher.

0

Was möchtest Du wissen?