Programma che leggere righe di un testo e sostituisce alcune lettere

di Anonimizzato22896 il
2 risposte
Buongiorno a tutti, sto cercando di fare un programma per scuola che prende le righe di un testo e sostituisce tutte le vocali con la vocale "u". Per lo svolgimento dovrei usare un metodo statico che accetti un carattere e lo restituisca trasformato opportunamente e dovrei chiamare il metodo all'interno di un ciclo che scorre i caratteri della riga corrente. ho scritto il metodo statico così:
import java.util.Scanner;
public class Garibaldi {
static char Sostitutore(char r) {
switch(char r) {
case a: r = u;
break;
case e: r = u;
break;
case i: r = u;
break;
case o: r = u;
break;
}
return r;
}
ma purtroppo quando compilo mi da errore e non riesco a capire come andare avanti. Il prof ci ha detto di usare un ciclo while controllato dal metodo hasNextLine(). Inoltre ci ha detto di fare il controllo tramite redirezione e ci ha detto di creare un file input.txt contenente le righe di prova, e di eseguire la nostra soluzione aggiungendo < input.txt alla fine della riga di comando. grazie mille a chiunque risponderà

2 Risposte

  • zioalens ha scritto:


    
    		switch(char r) {
    		case a: r = u;
    			break; 
    		case e: r = u;
    			break;
    		case i: r = u;
    			break;
    		case o: r = u;
    			break;
    		}
    
    Ci sono diverse cose sbagliate. Innanzitutto non va messo char nella espressione del switch. Ovvero switch(r) è sufficiente.

    Poi i case sono anche errati. a e ... u dovrebbero essere delle costanti (e non le hai). Devi mettere dei valori letterali

    case 'a': r = 'u';
  • Grazie mille ho risolto!
Devi accedere o registrarti per scrivere nel forum
2 risposte