How to convert snake case string to camel case in Java.

Given a string in a Snake Case, the task is to write a Java program to convert the given string from a snake box to a camel box 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

  • The idea is to first capitalize the first letter of the string,
  • then convert the string to a string generator, and
  • then loop through the string character by character from the first index to the last index and check whether the character is underlined, and then delete This character capitalizes the next character in the underscore.
  • Print the modified string.

Below is the implementation of the above approach:

Java

// 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);
	}
}

Output:

GeeksForGeeks

Method 2: Using String.replaceFirst() method

  • The idea is to use the String.replaceFirst() method to convert a given string from snake case to camel case.
  • First, capitalize the first letter of the string.
  • Loop until the string contains an underscore (_).
  • Replace the first letter that appears after the underscore with the capitalized form of the next letter in the underscore.
  • Print the modified string.

Below is the implementation of the above approach:

// 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));
	}
}

Output:

GeeksForGeeks

 

Submit Your Programming Assignment Details