package uebung33; public class ReplaceVowels extends Object { // Rekursiv: public static String replaceVowels(String s) { String result = replaceVowels(s, 0); return result; } // Rekursive Hilfsmethode: private static String replaceVowels2(final String s, int i) { if (i >= s.length()) return ""; char c = s.charAt(i); if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') c = 'x'; else if ("AEIOU".indexOf(c) != -1) // geht alternativ wie im if c = 'X'; return c + replaceVowels(s, i + 1); } private static String replaceVowels(String s, int i) { if (i < s.length()) { char c = s.charAt(i); if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') c = 'x'; else if (c == 'A' || c == 'O') c = 'X'; i++; String ergebnis = c + replaceVowels(s, i); return ergebnis; } else { return ""; } } // Iterativ: static String replaceVowelsIter(String s) { String result = ""; for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') result = result + 'x'; else if (c == 'A' || c == 'O' || c == 'U' || c == 'I' || c == 'E') result = result + 'X'; else result = result + c; } return result; } public static void main(String[] args) { System.out.println(replaceVowels("Beispiel Anfang Und")); } }