Ir al contenido

Contar las consonantes de una palabra con Java

Pues si esta mañana veíamos cómo contar las vocales de una palabra con Java, ahora vamos a contar las consonantes. Para ello, nos basaremos en el código de las vocales.

Todo aquello que no es una vocal puede parecer una consonante, pero solo si hablamos de letras: un carácter como & no es ni vocal ni consonante.

Primero creamos el método esVocal, que recibe un carácter y devuelve si es una vocal:

public static boolean esVocal(char c) {
if ((Character.toLowerCase(c) == 'a')
|| (Character.toLowerCase(c) == 'e')
|| (Character.toLowerCase(c) == 'i')
|| (Character.toLowerCase(c) == 'o')
|| (Character.toLowerCase(c) == 'u')) {
return true;
} else {
return false;
}
}

Dado un valor de tipo char, el método indica si es una vocal. Utilizamos Character.toLowerCase para evitar problemas con mayúsculas y minúsculas.

Podemos recorrer la palabra con un bucle for y aumentar contador cuando el carácter no sea una vocal:

for (int x = 0; x < sPalabra.length(); x++) {
if (!esVocal(sPalabra.charAt(x))) {
contador++;
}
}

Sin embargo, algunos caracteres no son vocales ni consonantes, como & o los símbolos matemáticos. Por eso debemos comprobar también que el carácter sea una letra mediante Character.isLetter:

for (int x = 0; x < sPalabra.length(); x++) {
if (Character.isLetter(sPalabra.charAt(x))
&& !esVocal(sPalabra.charAt(x))) {
contador++;
}
}

De esta forma podemos contar correctamente las consonantes de una palabra con Java.

Foto de Víctor Cuervo

Víctor Cuervo

Programador, Arquitecto IT, álter ego de Línea de Código, amante de las tecnologías, generador de conocimiento y facilitador del aprendizaje.

Descarga el código de Contar las consonantes de una palabra con Java

Contar las consonantes de una palabra con Java es fácil con un método fiable, usando Character.isLetter y esVocal. Optimiza tu código y cautiva usuarios.

Descargar código