Java Program to Count the Number of Vowels and Consonants in a Sentence

In this program, you'll learn to count the number of vowels, consonants, digits and spaces in a given sentence using if else in Java.

Example: Program to count vowels, consonants, digits and spaces

public class Count {

    public static void main(String[] args) {
        String line = "This website is aw3som3.";
        int vowels = 0, consonants = 0, digits = 0, spaces = 0;

        line = line.toLowerCase();
        for(int i = 0; i < line.length(); ++i)
        {
            char ch = line.charAt(i);
            if(ch == 'a' || ch == 'e' || ch == 'i'
                || ch == 'o' || ch == 'u') {
                ++vowels;
            }
            else if((ch >= 'a'&& ch <= 'z')) {
                ++consonants;
            }
            else if( ch >= '0' && ch <= '9')
            {
                ++digits;
            }
            else if (ch ==' ')
            {
                ++spaces;
            }
        }

        System.out.println("Vowels: " + vowels);
        System.out.println("Consonants: " + consonants);
        System.out.println("Digits: " + digits);
        System.out.println("White spaces: " + spaces);
    }
}

When you run the program, the output will be:

Vowels: 6
Consonants: 11
Digits: 3
White spaces: 3

In the above example, we've 4 conditions for each of the checks.

  • The first if condition is to check whether the character is a vowel or not.
  • The else if condition following if is to check whether the character is a consonant or not. The order should be the same otherwise, all vowels are treated as consonants as well.
  • The 3rd condition (else-if) is to check whether the character is between 0 to 9 or not.
  • Finally, the last condition is to check whether the character is a space character or not.

For this, we've lowercased the line using toLowerCase(). This is an optimization done not to check for capitalized A to Z and vowels.

We've used length() function to know the length of the string and charAt() to get the character at the given index (position).