Frecuencia de Caracteres en Cadenas Java

JavaBeginner
Practicar Ahora

Introducción

En Java, la clase String proporciona varios métodos que se pueden utilizar para encontrar la frecuencia de caracteres. El método replace(), el método chars() y un bucle personalizado se pueden utilizar para encontrar la ocurrencia de un carácter en una cadena. En este laboratorio, utilizaremos estos métodos para contar la ocurrencia de un carácter en una cadena Java.

Crea un archivo Java

Crea un nuevo archivo Java llamado CharOccurrence.java en el directorio ~/project y dile que se abra en un editor de texto.

cd ~/project
touch CharOccurrence.java

Usando el método replace()

En este paso, estamos utilizando el método replace() para encontrar la cuenta de un carácter en la cadena.

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("ocurrencias de a: "+count);
 }
}

Guarda y cierra el archivo. Compila el programa Java con el siguiente comando:

javac CharOccurrence.java

Ejecuta el programa Java con el siguiente comando:

java CharOccurrence

Usando los métodos chars() y filter() en Java 8

En este paso, estamos utilizando el método chars() que devuelve un flujo de caracteres y luego utilizando el método filter() para obtener todos los caracteres especificados presentes en la cadena. El método count() se utiliza para obtener la cuenta del flujo 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("ocurrencias de a: "+count);
 }
}

Guarda y cierra el archivo. Compila el programa Java con el siguiente comando:

javac CharOccurrence.java

Ejecuta el programa Java con el siguiente comando:

java CharOccurrence

Usando un bucle personalizado

Esta es una solución convencional para encontrar la cuenta de un carácter en una cadena. Aquí, estamos utilizando un bucle para recorrer cada carácter de la cadena y comparar el carácter utilizando el método charAt() que devuelve un carácter presente en el índice especificado y finalmente contando si un carácter coincide con el carácter deseado.

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("ocurrencias de a: "+count);
 }
}

Guarda y cierra el archivo. Compila el programa Java con el siguiente comando:

javac CharOccurrence.java

Ejecuta el programa Java con el siguiente comando:

java CharOccurrence

Resumen

En este laboratorio, aprendimos tres métodos diferentes para contar la ocurrencia de un carácter en una cadena Java. Utilizamos los métodos replace(), chars() y filter(), y un bucle personalizado. Todos los métodos son bastante fáciles de usar. Puedes utilizar cualquiera de los anteriores según sea conveniente para ti y el caso de uso.