Vokale in einem String überprüfen mittels Rekursion

P9cman

Mitglied
Moin Leute,
ich muss eine rekursive Methode schreiben die bei einem String Parameter überprüft ob der String ein Vokal enthält. Nun weiß ich nicht genau wie die Methode sich selber aufrufen soll und true oder false liefern soll.

danke für euer Hilfe
 

Wireless

Mitglied
Grundsätzlich schreibt man Methoden die etwas zurückgeben sollen so...
du kannst dann den Namen der Methode in der Methode erneut selbst aufrufen

Java:
public boolean hasVocals(String str) {
    //hier dein code
    return false;
}
 

P9cman

Mitglied
Grundsätzlich schreibt man Methoden die etwas zurückgeben sollen so...
du kannst dann den Namen der Methode in der Methode erneut selbst aufrufen

Java:
public boolean hasVocals(String str) {
    //hier dein code
    return false;
}
Also bis jetzt hab ich das hier:
[CODE lang="java" title="enthaeltVokal"]public boolean enthaeltVokal(String s)
{
boolean hatVokal = false;
s = s.toLowerCase();

if(s.length() == 0)
{
return false;
}
else
{

}
return false;
}[/CODE]
 
K

kneitzel

Gast
Was genau müsstest Du denn im else Zweig machen?

Formuliere es doch erst einmal im Detail in Worten. Wenn Du den Algorithmus erst einmal richtig erfasst hast, dann kannst Du den Schritt zu Java gehen. Nicht versuchen, zwei Dinge auf einmal zu bewältigen - das ist eine unnötige Komplexität.
 

Wireless

Mitglied
Also bis jetzt hab ich das hier:
[CODE lang="java" title="enthaeltVokal"]public boolean enthaeltVokal(String s)
{
boolean hatVokal = false;
s = s.toLowerCase();

if(s.length() == 0)
{
return false;
}
else
{

}
return false;
}[/CODE]
Ich hätte gar nicht so begonnen um ehrlich zu sein...

das wäre meine fertige Lösung

Java:
    public boolean hasVocals(String str) {
        str = str.toLowerCase();
        if (str.charAt(0) == 'a'|| str.charAt(0) == 'e'|| str.charAt(0) == 'i' || str.charAt(0) == 'o' || str.charAt(0) == 'u')
            return true;
        else if (str.length() == 1)
            return false;
        else return hasVocals(str.substring(1));
    }

jetzt zur Erklärung:

1. String in lowercase setzten
2. abfragen ob der erste char des Strings ein Vokal ist, wenn ja return true
3. falls jedoch die Länge des Strings schon 1 beträgt und diese kein Vokal ist return false
4. return der neuen aufgerufenen Methode und lösche den ersten Char weg
 
K

kneitzel

Gast
@Wireless Es wäre durchaus besser, wenn Du keine fertigen Lösungen vorgeben würdest. Der Lerneffekt ist doch so fast null. Schau lieber, woran es scheitert und helfe dem TE, seine Fehler zu erkennen um das dann selbst zu lösen. Danke.
 

P9cman

Mitglied
Was genau müsstest Du denn im else Zweig machen?

Formuliere es doch erst einmal im Detail in Worten. Wenn Du den Algorithmus erst einmal richtig erfasst hast, dann kannst Du den Schritt zu Java gehen. Nicht versuchen, zwei Dinge auf einmal zu bewältigen - das ist eine unnötige Komplexität.
also die Methode muss durch jeden buchstaben gehen und prüfen ob der char ein vokal ist, dabei muss immer um 1 erhöht werden damit der nächste buchstabe geprüft wird und das solange bis der index = der Länge vom String ist
 
K

kneitzel

Gast
also die Methode muss durch jeden buchstaben gehen und prüfen ob der char ein vokal ist, dabei muss immer um 1 erhöht werden damit der nächste buchstabe geprüft wird und das solange bis der index = der Länge vom String ist
Das wäre ein Ansatz, aber damit das funktionieren würde, bräuchtest Du dann bei jedem Aufruf den Index.

Den Ansatz findet man durchaus auch in der Praxis. Der hast Du den eigentlichen Aufruf und der ruft dann eine weitere Methode auf, die dann mehr Parameter hat.

Habt ihr schon mit Strings gearbeitet? Sprich; Kannst Du von einem String einen Teilstring erzeugen? (@Wireless hat dies ja schon gezeigt.) Wenn so eine Funktion bekannt / erlaubt ist, dann sollte man das nutzen.

Der generelle Aufbau einer Rekursion ist unter dem Strich immer gleich:
a) Prüfung, ob man am Ende angelangt ist - den Part hattest Du schon sehr schön mit drin.
b) Behandlung eines aktuellen Elements + rekursiver Aufruf für den "Rest".
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Aus einem String die Anzahl der Vokale auslesen Java Basics - Anfänger-Themen 40
V Erste Schritte Vokale im Satz ersetzen Java Basics - Anfänger-Themen 20
O Methode um Vokale zu entfernen UNSCHOEN! Java Basics - Anfänger-Themen 8
P vokale konsonanten ziffern satzzeichen aus string lesen. hab kiene ahnung Java Basics - Anfänger-Themen 10
H Erste Schritte String Vokale entfernen Java Basics - Anfänger-Themen 11
D Vokale auslesen in Satz Java Basics - Anfänger-Themen 7
S Vokale Java Basics - Anfänger-Themen 11
S Vokale vorhanden?? Java Basics - Anfänger-Themen 2
S Vokale am Ende von Wörtern löschen Java Basics - Anfänger-Themen 7
J Vokale ersetzen Java Basics - Anfänger-Themen 7
R Vokale aus String entfernen Java Basics - Anfänger-Themen 11
C Löschen der Vokale Java Basics - Anfänger-Themen 20
A Satzeingabe - Vokale zählen Java Basics - Anfänger-Themen 5
A Vokale im String ersetzen Java Basics - Anfänger-Themen 12
T Rekursiv Vokale zählen Java Basics - Anfänger-Themen 19
T Wie ersetze ich Vokale? Java Basics - Anfänger-Themen 4
W Vokale aus String zählen Java Basics - Anfänger-Themen 19
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 23
Zrebna Fragen zu einem Klassendiagramm Java Basics - Anfänger-Themen 8
S HashMap mehrere Keys zu einem Value Java Basics - Anfänger-Themen 3
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
F 2x 16bit Werte zu einem 32bit und dann splitten mit 0xb Java Basics - Anfänger-Themen 1
J JSON mit einem JPanel Java Basics - Anfänger-Themen 3
F Einem GIT repository ein Projekt hinzufügen Java Basics - Anfänger-Themen 1
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21
J Auf einem JLabel Linien Malen Java Basics - Anfänger-Themen 1
I @Entity Klassen, Service Beans etc. aus einem Share Projekt beziehen? Java Basics - Anfänger-Themen 26
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
N Einzelne Werte aus einem TreeSet auslesen Java Basics - Anfänger-Themen 2
N Welche Objekte kann man zu einem Set hinzufügen Java Basics - Anfänger-Themen 4
Kumora ArrayIndexOutOfBoundsException bei einem Sortierverfahren Java Basics - Anfänger-Themen 2
I Viereck / Rechteck Prüfung innerhalb einem bestimmten Bereich Java Basics - Anfänger-Themen 2
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
Substring in einem String finden Java Basics - Anfänger-Themen 13
J Fehlerbehandlung an einem Beispiel Java Basics - Anfänger-Themen 8
I ResultSet aus meiner SQL-Abfrage in einem JTextfield ausgeben. Java Basics - Anfänger-Themen 1
I Innerhalb einem Bild ein Teil austauschen Java Basics - Anfänger-Themen 26
I Dateigröße von einem InputStream oder byte[] bekommen Java Basics - Anfänger-Themen 2
H Compiler-Fehler Klasse in einem Package wird nicht gefunden bzw. akzeptiert Java Basics - Anfänger-Themen 12
S Algorithmus entwicklen, der zu einem gegebenen Datum die Jahreszeit ermittelt Java Basics - Anfänger-Themen 13
B In einem Thread Endlosschleife beenden Java Basics - Anfänger-Themen 19
A Elemente in einem Array Java Basics - Anfänger-Themen 5
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
M Objekt in einem Objekt speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
D spezifische Knoten in einem Baum zählen Java Basics - Anfänger-Themen 9
X Erste Schritte Hilfe bei einem kleinen Spiel. Java Basics - Anfänger-Themen 19
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
B Brauche Hilfe zu einem Code Java Basics - Anfänger-Themen 5
J Zahlen bis zu einem bestimmten Grenzwert ausgeben Java Basics - Anfänger-Themen 11
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
Igig1 Wie lasse ich dir Werte in einem Array zusammenrücken? Java Basics - Anfänger-Themen 4
W Methode, die mit einem Datum arbeitet? Java Basics - Anfänger-Themen 22
Igig1 Welche Werte sind als default Werte in einem Array, der als Datentyp eine Klasse hat? Java Basics - Anfänger-Themen 1
Kiki01 Wie würde eine geeignete Schleife aussehen, die die relative Häufigkeit für jeden Charakter in einem Text bestimmt? Java Basics - Anfänger-Themen 3
C Hilfe bei einem Anfängerprojekt Java Basics - Anfänger-Themen 25
U Char zu einem String machen Java Basics - Anfänger-Themen 1
U Kann man bei Java gleich mehrere Bedingungen prüfen in der If, aber in einem "Satz"? Java Basics - Anfänger-Themen 1
Schniffi Nur bestimmte Bilder aus einem Array auf Image Button anzeigen lassen Java Basics - Anfänger-Themen 3
S Längster Pfad zwischen zwei Vertices in einem Graph Java Basics - Anfänger-Themen 3
I Upload File zu einem Webservice Java Basics - Anfänger-Themen 17
Naxon89 Input/Output Ein PDF in einem BLOB umwandeln um ihn dann als PDF wieder anzuzeigen Java Basics - Anfänger-Themen 3
Kotelettklopfer Mehrere Projekte in einem Git verwalten Java Basics - Anfänger-Themen 10
B in einem Array den nächstgelegenen Wert zu einem eingabewert finden Java Basics - Anfänger-Themen 8
E JPanels auf gleicher Höhe (Y-Achse) in einem FlowLayout platzieren Java Basics - Anfänger-Themen 7
C Programm das feststellen kann, ob eine eingegebene Zahl einem Schaltjahr entspricht, richtig geschrieben? Java Basics - Anfänger-Themen 11
M Von einem Menü Methode aus anderer Klasse ausführen, die errechnete Werte in Datei schreibt. Java Basics - Anfänger-Themen 8
A Zu einem bestimmten Ort im Code springen Java Basics - Anfänger-Themen 11
I Validation, ob String ein Wert aus einem Enum enthält Java Basics - Anfänger-Themen 3
B Häufigkeit einzelner Zahlen in einem Array Java Basics - Anfänger-Themen 6
D Zufällige Auswahl aus einem angelegten Array? Java Basics - Anfänger-Themen 10
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
T Methode schreiben, die einem Array ein Stringelement hinzufügt, wenn dieses noch nicht enthalten ist. Java Basics - Anfänger-Themen 6
TimoN11 IntelliJ , Ausgabe von einem Quellcode in Eingabe eines Quellcodes Java Basics - Anfänger-Themen 1
R Mehrere Buchstaben aus einem String entfernen Java Basics - Anfänger-Themen 1
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
J Alle Dateien aus einem Verzeichnis laden Java Basics - Anfänger-Themen 10
H Minimum in einem Array bestimmen Java Basics - Anfänger-Themen 7
J Input/Output Konstruktor ergänzen, der zur Datei mit einem Objekt passt Java Basics - Anfänger-Themen 0
P Auswahl bei einem Videoverleih limitieren Java Basics - Anfänger-Themen 4
B Quicksort in Verbindung mit einem Projekt Java Basics - Anfänger-Themen 1
P Ein Objekt nach einem String durchsuchen? Java Basics - Anfänger-Themen 7
dieter000 Frage zu einem Beispiel... Java Basics - Anfänger-Themen 5
O Java Weinachtsbaum in einem Bilderramen Java Basics - Anfänger-Themen 5
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
Y Knoten an einem gegebenen Index aus einer Liste entfernen. Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben