Site icon TestingDocs.com

Write a java program to find vowels in a string?

Overview

Write a java program to find vowels in a string. Write some testcases to test your program output. Sample output and TestCase:

Sample input to the program

String s = TestingDocs

Sample output of the program:

Input String: TestingDocs
First vowel: e at position 2.
Last vowel: o at position 9.

 

Java Program

package com.javaautomation.questions;

import java.util.Scanner;

public class VowelStringLocator {

/* This method returns true if c is an upper case or lower case vowel
 * or false otherwise. Vowels in English alphabets aeiouAEIOU*/
 public static boolean isVowel(char c) {
 /* Checking for both upper case and lower case vowels */
 /* || logical or */
 if (c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='A' || c=='E' || c=='I' || c=='O' || c=='U') 
 return true;
 else
 return false;
 }

/* This method returns the position of the first vowel in s or -1
 * if s contains no vowels at all. */
 public static int positionOfFirstVowel(String s) {
 char c;
 /* in a loop check for each character in s for a vowel */
 /* if vowel return the index and stop */
 for (int i = 0; i < s.length(); i++) {
 c = s.charAt(i);
 if (isVowel(c)) 
 return i + 1;
 }
 return -1;
 }

/* returns the position of the last occurrence of a vowel in
 * s or -1 if s contains no vowels at all. It is just the same as above
 * method just that we check the string from reverse */
 public static int positionOfLastVowel(String s) {
 char c;
 /* in a loop check for each character in s for vowel */
 /* if vowel return the index and stop */
 for (int i = s.length() -1 ; i >= 0; i--) {
 c = s.charAt(i);
 if (isVowel(c)) 
 return i + 1;
 }
 return -1;
 }



public static void main(String[] args) {
 // TODO Auto-generated method stub
 Scanner input = new Scanner(System.in);
 String s;
 System.out.println("Please enter Input String");
 s = input.next();
 System.out.println("Input String is:" + s);
 int position = positionOfFirstVowel(s);
 if(position != -1)
 {
 System.out.println("First vowel:" + s.charAt(position-1) + " at position " + position);
 }
 else {
 System.out.println("First vowel:NOT FOUND");
 }
 
 position = positionOfLastVowel(s);
 if(position != -1)
 {
 System.out.println("Last vowel:" + s.charAt(position-1) + " at position " + position);
 }
 else {
 System.out.println("Last vowel:NOT FOUND");
 }
 input.close();

}

}

 

Output of the program.

Please enter Input String
TestingDocs
Input String is:TestingDocs
First vowel:e at position 2
Last vowel:o at position 9

Test case

Please enter Input String
123456789
Input String is:123456789
First vowel:NOT FOUND
Last vowel:NOT FOUND

Test case

Please enter Input String
Apple a day keeps doctor away!
Input String is:Apple
First vowel:A at position 1
Last vowel:e at position 5

Exit mobile version