Superstar567 unregistriert
 |
|
| Java-Programmcode zu Stringvergleichen |
 |
Meine Frage:
Hallo Leute,
ich soll einen Code niederschreiben, der zwei Strings vergleicht und ausgibt wie oft der eine im anderen vorkommt. Unten der folgende Code.
Es wird kein Compilierungsfehler ausgegeben, aber wenn ich das Programm starte, gibt es keine Bildschirmrückgabe.
Was mache ich falsch?
Beste Grüße
Meine Ideen:
public class Occur{
public static void main(String[] args){
String x = "ei";
String y = "JaVa isT eIn KafFeE, eiNe InSEl unD Eine ProgRamMiersprAche!";
System.out.println(occurences(x,y));
}
public static int occurences(String eineKette, String andereKette){
int i = 0;
int counter = 0;
while(i<=andereKette.length()){
i = andereKette.indexOf(eineKette, i);
counter++;
}
return counter;
}
}
|
|
21.05.2016 16:41 |
|
|
|
|
Du hast deshalb keine Ausgabe, weil das Programm eine Endlosschleife macht.
Hast du ein Vorkommen von eineKette in andereKette, dann weist i = andereKette.indexOf(eineKette, i); der Variablen i immer den selben Wert zu. Du solltest bei indexOf i+1 verwenden.
Außerdem musst du in der Abbruchbedingung prüfen, ob i != -1 ist. Wenn der String nicht gefunden wird, liefert die Funktion nämlich -1.
__________________ Syntax Highlighting fürs Board (Link)
|
|
21.05.2016 16:57 |
|
|
|