Prerequisite: Recursion in Java
In the previous article, we have discussed about Java Program to Find First Lowercase Letter in a String by Using Recursion
In this program we are going to see how to find first uppercase in a string using by recursion in Java programming language.
Java Program to Find First Uppercase Letter in a String by Using Recursion
Let’s see an example to understand it.
Lets assume there is a string “i LoVe JaVa” The first uppercase letter is 'L'
Now let’s see different ways to find first uppercase in a string by using recursion.
Method-1: Java Program to Find First Uppercase Letter in a String By Using Static Input and Recursion
Approach:
- Declare and initialize a String variable ‘
str’ as “i LoVe JaVa” - Call a user defined method
firstuppercase()and pass the string ‘str’ and the 1st index ‘0’ as parameter. - Inside the user defined method we will check if the first character is uppercase or not.
- If the 1st char is uppercase then return that value else call the
firstuppercase()method recursively to find the first uppercase value. - If the string has no uppercase value then it throws an exception which is handled with an “exception occurs” message and then returns 0 to the main() method.
- Now the value of the user defined method
firstuppercase()is stored in an integer variable say ‘b’ inside the main() method. - Print the value of first uppercase in that string.
Program:
import java.util.*;
import java.io.*;
public class Main
{
public static void main(String[] args)
{
//declare and initialize an String variable str
String str = "i LoVe JaVa";
System.out.println("The string is: "+str);
//define the method and store the first uppercase value inside an integer variable say ‘b’
char b = firstuppercase(str,0);
//print the result
if (b == 0)
System.out.println("The string has No uppercase letter");
else
System.out.println("The first uppercase in the string is: "+b);
}
// firstuppercase() function is called to find the first uppercase in the string
static char firstuppercase(String str, int n)
{
// checking if the 1st character is uppercase or not
if(Character.isUpperCase(str.charAt(n)))
{
return str.charAt(n);
}
//calling firstuppercase() function recursively to find the first uppercase in the string
try
{
return firstuppercase(str, n + 1);
}
// if there is no uppercase letter in the string then it throws an exception and return 0
catch(Exception e)
{
System.out.println("Exception occurs ");
}
return 0;
}
}
Output: The string is: i LoVe JaVa The first uppercase in the string is: L
Method-2: Java Program to Find First Uppercase Letter in a String By Using User Input and Recursion
Approach:
- Create a scanner class.
- Declare a string variables say ‘
str’ - Prompt the user to enter the values for the string.
- Call a user defined method
firstuppercase()and pass the string ‘str’ and the 1st index ‘0’ as parameter. - Inside the user defined method we will check if the 1st character is uppercase or not.
- If the 1st char is uppercase then return that value else call the
firstuppercase()method recursively to find the first uppercase value. - If the string has no uppercase value then it throws an exception which is handled with an “exception occurs” message and then returns 0 to the main() method.
- Now the value of the user defined method
firstuppercase()is stored in an integer variable say ‘b’ inside the main() method. - Print the value of first uppercase in that string.
Program:
import java.util.*;
import java.io.*;
public class Main
{
public static void main(String[] args)
{
// create a scanner class
Scanner s = new Scanner(System.in);
System.out.println("Enter a string value: ");
//declare an integer variable ‘n’and initialize it by user input using scanner class.
String str = s.nextLine();
System.out.println("The string is: "+str);
//define the method and store the first uppercase value inside an integer variable say ‘b’
char b = firstuppercase(str,0);
//print the result
if (b == 0)
System.out.println("The string has No uppercase letter");
else
System.out.println("The first uppercase in the string is: "+b);
}
// firstuppercase() function is called to find the first uppercase in the string
static char firstuppercase(String str, int n)
{
// checking if the 1st character is uppercase or not
if(Character.isUpperCase(str.charAt(n)))
{
return str.charAt(n);
}
//calling firstuppercase() function recursively to find the first uppercase in the string
try
{
return firstuppercase(str, n + 1);
}
// if there is no uppercase letter in the string then it throws an exception and return 0
catch(Exception e)
{
System.out.println("Exception occurs ");
}
return 0;
}
}
Output: Enter a string value: btechgeeks The string is: btechgeeks Exception occurs The string has No uppercase letter
The best and excellent way to learn a java programming language is by practicing Simple Java Program Examples as it includes basic to advanced levels of concepts.
Related Java Programs: