Oi tudo bem? Como faço para retornar uma posição (int) específica de uma string em Java?

1 resposta
java
K

Estou em dúvida pois o indexOf() retorna a posição da primeira ocorrência de caracteres especificados em uma sequência. Mas estou querendo especificar essa ocorrência, como a segunda vez que ocorre a aparição de um char ou a terceira e assim por diante.

public int getPosicaoDaIezimaOcorrencia (int i, char letra) throws Exception
    {
        // se i==0, retorna a posicao em que ocorre a primeira
        // aparicao de letra fornecida em this.texto;
        // se i==1, retorna a posicao em que ocorre a segunda
        // aparicao de letra fornecida em this.texto;
        // se i==2, retorna a posicao em que ocorre a terceira
        // aparicao de letra fornecida em this.texto;
        // e assim por diante.
        // lancar excecao caso nao encontre em this.texto
        // a Iezima aparicao da letra fornecida.
    }

Seria para um jogo da forca. No começo dessa classe tem um private String texto. O char vai ser o caractere que o usuário vai digitar. Com a informação da posição, será revelado pro usuário.

1 Resposta

S

A classe String possui 4 métodos indexOf sobrecarregados, um deles faz o que você quer, confira a documentação.

Criado 3 de junho de 2022
Ultima resposta 3 de jun. de 2022
Respostas 1
Participantes 2