Cara a própria classe String em java, tem um método indexOf(); que vc consegue utiliza-lo para buscar um caracter na String. de uma olhada nesse método:
wellington.nogueira e mspereira ta certo… confesso q não li o código q ele postou… mal ae… mas ta ai 2 soluções: Para saber se contem um determinado caracter na String use o indexOf, para saber quantos contem use o for com charAt(). =P
Aproveitando a deixa, uma outra forma de fazer isso seria:
[code]
String texto = “FASDFASDFASD”;
String textoArray[] = texto.split("F"); // F é o caracter q vc busca
System.out.println(textoArray.length - 1); [/code]Simples tb, e fica disponivel caso vc queira não só procurar 1 caracter, mas uma string. Por exemplo saber qtas vezes aparece "FA" nesta string.
Isso ae vai pegar a string "Hello World!" e vai procurar o char "d" nessa String.[/quote]
Recomendo fortemente que não faça isso, usar a recursividade nesse caso é 1 pleonasmo…
Sempre quando puder evitar recursividade Evite.
Use o método indexOf
[quote=eltonbonato]e se eu quiser que o usuário entre com a string? qual comando uso?
vi que esse comano abaixo é de entrada.
serie ele? System.in.//+ algo?[/quote]
Se você testar o exemplo que eu coloquei aqui, verá como é que se lê um texto do console!
Scanner scn = new Scanner(System.in);
System.out.print("Digita uma string: " );
String texto = scn.nextLine();
System.out.print("Digita uma numero: " );
int numero = scn.nextInt(); //não sei se o i é maiúsculo, to sem IDE agora
Falar para usar apenas o indexOf não resolve o problema sugerido pois retornará apenas a primeira ocorrência e não todas as ocorrências (não há um break no loop).
A solução do claudneto é a que mais se aproxima da proposta.
Se quiser que seja independente de ser Upper ou Lowercase, segue:
String str = "sAlada"; //repare o primeiro A em maiúsculo.
char character = 'a';
char comparador = Character.toLowerCase(character);
for (int i = 0; i < str.length(); i++) {
char charAt = str.charAt(i);
if (Character.toLowerCase(charAt) == comparador) {
System.out.println (character + " encontrado em " + str + " --> " + charAt);
}
}
Recomendo fortemente que não faça isso, usar a recursividade nesse caso é 1 pleonasmo…
Sempre quando puder evitar recursividade Evite.
Use o método indexOf[/quote]
Recursividade?
E, novamente, indexOf não resolve o problema sugerido 8)