Il tuo esempio va bene se non per il fatto che i tuoi metodi sono d'istanza , andrebbero definiti statici...piccola distrazione (penso)Originariamente inviato da valia
chissà perché io la ricorsione l'ho sempre vista con 2 casi, uno base e uno ricorsivo.codice:private String vocaliMaiuscole(String stringa) { String ret = ""; Character test ; if (stringa.length() == 0) { ret = stringa ; } else { test = stringa.charAt(0); if (isVocale(test)) { test = Character.toUpperCase(test); } ret += test; ret += vocaliMaiuscole(stringa.substring(1)); } return ret; } private boolean isVocale(char character) { boolean ret = false; switch (character) { case 'A': case 'a': case 'E': case 'e': case 'I': case 'i': case 'O': case 'o': case 'U': case 'u': ret = true; break; } return ret; }
Gli altri secondo me complicano la vita.
Qui hai un esempio della mia implementazione (funziona) e volendo puoi generalizzare (chiedendo anche l'inversione del case)![]()