En este tutorial, escribiremos un programa Java para encontrar la aparición de un carácter en una cadena.
Programa para encontrar la ocurrencia de un carácter en una cadena
En este programa estamos encontrando la ocurrencia de cada carácter en una cadena. Para hacer esto, primero estamos creando una matriz de tamaño 256 (rango superior ASCII), la idea aquí es almacenar el recuento de ocurrencias contra el valor ASCII de ese carácter. Por ejemplo, la aparición de “A” se almacenaría en el contador[65] dado que el valor ASCII de A es 65, de manera similar, las apariciones de otros caracteres se almacenan en relación con sus valores de índice ASCII.
Por lo tanto, estamos creando otra matriz. array
para contener los caracteres de la cadena dada, los estamos comparando con los caracteres de la cadena y cuando se encuentra una coincidencia, el recuento de ese carácter en particular se muestra usando counter
Vector.
class JavaExample { static void countEachChar(String str) { //ASCII values ranges upto 256 int counter[] = new int[256]; //String length int len = str.length(); /* This array holds the occurrence of each char, For example * ASCII value of A is 65 so if A is found twice then * counter[65] would have the value 2, here 65 is the ASCII value * of A */ for (int i = 0; i < len; i++) counter[str.charAt(i)]++; // We are creating another array with the size of String char array[] = new char[str.length()]; for (int i = 0; i < len; i++) { array[i] = str.charAt(i); int flag = 0; for (int j = 0; j <= i; j++) { /* If a char is found in String then set the flag * so that we can print the occurrence */ if (str.charAt(i) == array[j]) flag++; } if (flag == 1) System.out.println("Occurrence of char " + str.charAt(i) + " in the String is:" + counter[str.charAt(i)]); } } public static void main(String[] args) { String str = "beginnersbook"; countEachChar(str); } }
Producción:
Programas Java relacionados
1. Programa Java para ordenar cadenas alfabéticamente
2. Programa Java para controlar vocales y consonantes
3. Programa Java para encontrar caracteres duplicados en una cadena.
4. Programa Java para comprobar la cadena palíndromo