hi leute
versuche soeben in einem text nach einem wort zu suchen.
der code is alles andere als kompakt oder einigermassen klug geschrieben, ich weiss, totale bastelei. =)
trotzdem hab ich ne frage zu meiner while schlaufe (siehe unten):
wenn ich br.read() ausführe und beim nächsten schlaufendurchlaufe (die while schlaufe mit br.read()) wieder zu br.read() gelange, arbeitet er dann an der zuletzt stehen gebliebenen stelle weiter oder beginnt er wieder von vorne?
nun, wenn ich den code so ausführe, kommt er in einen endlosloop und irgendwann krieg ich nen OutOfMemoryError! =)
kann mir hierzu jemand ne antwort geben?
danke für die hilfe!
mfg
rox
versuche soeben in einem text nach einem wort zu suchen.
der code is alles andere als kompakt oder einigermassen klug geschrieben, ich weiss, totale bastelei. =)
trotzdem hab ich ne frage zu meiner while schlaufe (siehe unten):
wenn ich br.read() ausführe und beim nächsten schlaufendurchlaufe (die while schlaufe mit br.read()) wieder zu br.read() gelange, arbeitet er dann an der zuletzt stehen gebliebenen stelle weiter oder beginnt er wieder von vorne?
Code:
while (br.ready()) {
// nach leerzeichen im text suchen
while ((c = br.read()) != 32) {
arr.add(c);
wortlaenge++;
// System.out.println("1 " + c);
}
for (int i = 0; i < arr.size(); i++) {
int b = arr.elementAt(i);
char a = (char) b;
// System.out.println(a);
strBuf.append(a);
}
if (strBuf.toString().equals(suchWort.toString())) {
System.out.println("Match!");
System.out.print(" " + ++zaehler);
} else {
// System.out.println("Keine Übereinstimmung!");
System.out.print(++zaehler);
}
arr.clear();
// System.out.println(br.readLine());
} // while-block ende
nun, wenn ich den code so ausführe, kommt er in einen endlosloop und irgendwann krieg ich nen OutOfMemoryError! =)
kann mir hierzu jemand ne antwort geben?
danke für die hilfe!
mfg
rox