In this article, we will take on a popular programming exercise of counting vowels in a word. You need to write a
Java program to count how many vowels in a String, which is entered from command prompt. It's similar to program of
counting occurrence of characters in a String, in fact it's a special case, where you need to count occurrences of all vowels, which includes five characters
a, e, i, o and
u. We will further use Scanner to get input from user, as shown in this article. Though I have put down all code inside main method for quick testing, if you are asked to write this program as part of your homework or during interview, better writing a method called
public int countVowels(String word) and put logic of counting vowels there. That's a better coding style than writing everything inside
main method. By the way, you can also use this logic to count number of consonants in a Java String. What you need to do is first count number of vowels and then subtract those characters from length of String, but remember this will only work if your String contains only alphabetic words, if it contains special character like
@, _, | or numbers like
1,2,3 etc, than it will not work. In that case you need to extend your logic to only count consonants, by extending your switch case to include rest of 21 characters from English alphabets.