Contar ocorrências de um determinado caractere em uma String em Java

Google Translate Icon

Este post discutirá como contar ocorrências de um determinado caractere em uma string em Java.

1. Solução ingênua

Também podemos escrever nossa própria rotina para essa tarefa simples. A ideia é iterar sobre caracteres na string usando um loop for e, para cada caractere encontrado, incremente o contador (começando em 0) se ele corresponder ao caractere fornecido.

Download  Executar código

2. Usando Java 8

Com Java 8, podemos usar Stream para contar ocorrências do caractere fornecido em uma string. Isso é demonstrado abaixo:

Download  Executar código

3. Usando a Biblioteca Guava

Outra boa alternativa é usar a Guava CharMatcher classe.

Código de download

4. Usando Apache Commons Lang

Também podemos fazer isso usando o countMatches método do StringUtils classe fornecida pela biblioteca Apache Commons.

Código de download

5. Usando replace() método

Aqui está outra solução que usa String's replace() método para remover todas as ocorrências do caractere especificado da string e fazer uso do length() propriedade da string para determinar a contagem, conforme mostrado abaixo:

Download  Executar código

6. Usando Regex

Outra maneira plausível é usar expressões regulares junto com um contador.

Download  Executar código

7. Usando o Mapa de Frequência

A complexidade de tempo de todas as soluções acima é pelo menos linear, pois estamos varrendo toda a string. Se o número total de pesquisas for maior, considere pré-processar a string uma vez e criar um mapa de frequência fora dele que armazena a contagem de cada caractere distinto presente na string. Agora, cada chamada de método subsequente terá a única linha constante.

Download  Executar código

Isso é tudo sobre a contagem de ocorrências de um determinado caractere em uma String Java.

Avalie esta postagem

Classificação média 4.75/5. Contagem de votos: 16

Sem votos até agora! Seja o primeiro a avaliar este post.

Lamentamos que este post não tenha sido útil para você!

Diga-nos como podemos melhorar este post?




Obrigado por ler.

Por favor, use nosso compilador online para postar código em comentários usando C, C++, Java, Python, JavaScript, C#, PHP e muitas outras linguagens de programação populares.

Como nós? Indique-nos aos seus amigos e ajude-nos a crescer. Codificação feliz :)



Se inscrever
Notificar de
guest
0 Comentários
Comentários em linha
Ver todos os comentários
NÃO siga este link ou você será banido do site!