Convert Snake Case string to Camel Case in Java

Given a string in Snake Case, the task is to write a Java program to convert the given string from snake case to camel case and print the modified string.

Examples:

Input: str = “geeks_for_geeks”
Output: GeeksForGeeks

Input: str = “snake_case_to_camel_case”
Output: SnakeCaseToCamelCase

Method 1: Using Traversal

  1. The idea is to first capitalize the first letter of the string.
  2. Then convert the string to string builder.
  3. Then traverse the string character by character from the first index to the last index and check if the character is underscored then delete the character and capitalize the next character of the underscore.
  4. Print the modified string.

Below is the implementation of the above approach:



Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program for the above approach
  
import java.io.*;
  
class GFG {
  
    // Function to convert snake case
    // to camel case
    public static String
    snakeToCamel(String str)
    {
        // Capitalize first letter of string
        str = str.substring(0, 1).toUpperCase()
              + str.substring(1);
  
        // Convert to StringBuilder
        StringBuilder builder
            = new StringBuilder(str);
  
        // Traverse the string character by
        // character and remove underscore
        // and capitalize next letter
        for (int i = 0; i < builder.length(); i++) {
  
            // Check char is underscore
            if (builder.charAt(i) == '_') {
  
                builder.deleteCharAt(i);
                builder.replace(
                    i, i + 1,
                    String.valueOf(
                        Character.toUpperCase(
                            builder.charAt(i))));
            }
        }
  
        // Return in String type
        return builder.toString();
    }
  
    // Driver Code
    public static void
        main(String[] args)
    {
  
        // Given String
        String str = "geeks_for_geeks";
  
        // Function Call
        str = snakeToCamel(str);
  
        // Modified String
        System.out.println(str);
    }
}

chevron_right


Output:

GeeksForGeeks

Method 2: Using String.replaceFirst() method

  1. The idea is to use String.replaceFirst() method to convert the given string from snake case to camel case.
  2. First, capitalize the first letter of the string.
  3. Run a loop till the string contains underscore (_).
  4. Replace the first occurrence of a letter that present after the underscore to the capitalized form of the next letter of the underscore.
  5. Print the modified string.

Below is the implementation of the above approach:

Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program for the above approach
  
class GFG {
  
    // Function to convert the string
    // from snake case to camel case
    public static String
    snakeToCamel(String str)
    {
        // Capitalize first letter of string
        str = str.substring(0, 1).toUpperCase()
              + str.substring(1);
  
        // Run a loop till string
        // string contains underscore
        while (str.contains("_")) {
  
            // Replace the first occurrence
            // of letter that present after
            // the underscore, to capitalize
            // form of next letter of underscore
            str = str
                      .replaceFirst(
                          "_[a-z]",
                          String.valueOf(
                              Character.toUpperCase(
                                  str.charAt(
                                      str.indexOf("_") + 1))));
        }
  
        // Return string
        return str;
    }
  
    // Driver Code
    public static void
    main(String args[])
    {
        // Given string
        String str = "geeks_for_geeks";
  
        // Print the modified string
        System.out.print(snakeToCamel(str));
    }
}

chevron_right


Output:

GeeksForGeeks

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.




My Personal Notes arrow_drop_up

External Technical Content Reviewer at GeeksforGeeks

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.