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.



