La consegna di questo esercizio mi chiede di creare una metodo contaParole (la classe fa riferimento al numero dell'esercizio cioè il 5, per questo "Es5") , che mi dà come output il numero di volte che una determinata parola che ho chiamato "riferimento", venga inserita nella frase in input dall'utente.Credo di aver sbagliato tutto, ma dopo vari tentativi non so più che fare.
import java.util.Scanner;
public class Es5{
private String a[];
public Es5(String a[]){
this.setA(a);
}
public void setA(String a[]){
this.a=a;
}
public int contaParola(String a[]){
String riferimento = "Ciao";
int count= 0;
for(int i=0; i<a.length; i++){
if(a.equals(riferimento)){
count = count + 1;
}
}
if(count!=0){
System.out.println("Numero parole uguali a Ciao: " +count);
}else{
System.out.println("Non ci sono parole uguali a Ciao");
}
return count;
}
public static void main(String args[]){
Es5 ogg = new Es5();
System.out.println("Immetti frase");
Scanner tastiera= new Scanner(System.in);
String[] frase = tastiera.nextLine();
ogg.setA(frase);
ogg.contaParola(frase);
}
}
forse manca un for nel main( visto che non mi controlla tutta la frase , ma soltanto la prima parola , cioè la prima stringa) e non sono neanche molto sicuro del primo for.
Qualcuno può aiutarmi a sistemarlo ?![]()