Ola pessoal, alguem sabe como posso achar um e-enesimo caracter em uma string sem fazer um ciclo for na string? Eu olhei a API da classe string e nao achei nada do genero.
Exemplo: String a = “gato, cachorro, macaco, gorila, biscoito”;
Eu queto saber em que posiçao esta a terceira virgola, nesse caso, a posiçao é 23.
O metodo String.indexOf() não vai funcionar, para isso tente:
String.charAt(intindex)
abrss
D
devaney
O indexOf nao resolve. Ele procura uma string a partir de um index.
String a = "gato, cachorro, macaco, gorila, biscoito";
//se eu colocar
System.out.println("Posiçao " + a.indexOf(",",3));
Eu estarei dizendo, “A partir do index 3 eu quero achar a virgola.” E na verdade oq eu quero é “Onde esta’ a terceira virgola.”.
Eu poderia até fazer um for para procurar, mas se a string for muito grande o loop começa a ficar lento.
Vini_Fernandes
Novamente, tente charAt(int).
D
devaney
Tb nao resolve. Nesse caso estou dizendo “Me da o caracter que esta no indice i” e nao é isso que eu quero, oq eu quero é “Onde esta a terceira virgola.”
Vini_Fernandes
Cara, não há API para isso, ou seja, você vai ter que criar.
abrs…
maior_abandonado
a questão aqui é lógica… você não pode usar o loop for especificamente ou não pode usar nenhum loop? pode usar recursão?
maior_abandonado
com recursão você consegue fazer… testei aqui e funcionou.
vou deixar você quebrar a cabeça para descobrir como.