Introdução
Em Java, a classe String oferece diversos métodos que podem ser utilizados para encontrar a frequência de caracteres. O método replace(), o método chars() e loops personalizados podem ser usados para encontrar a ocorrência de um caractere em uma String Java. Neste laboratório, usaremos esses métodos para contar a ocorrência de um caractere em uma String Java.
Criar um arquivo Java
Crie um novo arquivo Java chamado CharOccurrence.java no diretório ~/project e abra-o em um editor de texto.
cd ~/project
touch CharOccurrence.java
Usando o método replace()
Nesta etapa, estamos usando o método replace() para encontrar a contagem de um caractere na string.
public class CharOccurrence {
public static void main(String[] args){
String str = "abracadabra-banana";
System.out.println(str);
// count occurrence
int count = str.length() - str.replace("a", "").length();
System.out.println("occurrence of a: "+count);
}
}
Salve e feche o arquivo. Compile o programa Java com o seguinte comando:
javac CharOccurrence.java
Execute o programa Java com o seguinte comando:
java CharOccurrence
Usando os métodos chars() e filter() em Java 8
Nesta etapa, estamos usando o método chars(), que retorna um fluxo de caracteres, e então usando o método filter() para obter todos os caracteres especificados presentes na string. O método count() é usado para obter a contagem do fluxo filtrado.
public class CharOccurrence {
public static void main(String[] args){
String str = "abracadabra-banana";
System.out.println(str);
// count occurrence
long count = str.chars().filter(ch -> ch == 'a').count();
System.out.println("occurrence of a: "+count);
}
}
Salve e feche o arquivo. Compile o programa Java com o seguinte comando:
javac CharOccurrence.java
Execute o programa Java com o seguinte comando:
java CharOccurrence
Usando um loop personalizado
Esta é uma solução convencional para encontrar a contagem de um caractere na string. Aqui, estamos usando um loop para percorrer cada caractere da string e comparando o caractere usando o método charAt(), que retorna um caractere presente no índice especificado, e finalmente contando se um caractere corresponde ao caractere desejado.
public class CharOccurrence {
public static void main(String[] args){
String str = "abracadabra-banana";
System.out.println(str);
// count occurrence
int count = 0;
for (int i=0; i < str.length(); i++)
{
if (str.charAt(i) == 'a')
{
count++;
}
}
System.out.println("occurrence of a: "+count);
}
}
Salve e feche o arquivo. Compile o programa Java com o seguinte comando:
javac CharOccurrence.java
Execute o programa Java com o seguinte comando:
java CharOccurrence
Resumo
Neste laboratório, aprendemos três métodos diferentes para contar a ocorrência de um caractere em uma string Java. Usamos os métodos replace(), chars() e filter(), e um loop personalizado. Todos os métodos são bastante fáceis de usar. Você pode usar qualquer um dos acima de acordo com sua conveniência e caso de uso.



