Java Character toTitleCase() Method

The Character.toTitleCase() method in Java is used to convert a specified character to its titlecase equivalent.

Table of Contents

  1. Introduction
  2. toTitleCase() Method Syntax
  3. Examples
    • Converting Single Characters
    • Handling Non-Alphabetic Characters
    • Converting Unicode Code Points
  4. Real-World Use Case
  5. Conclusion

Introduction

The Character.toTitleCase() method is a static method in the Character class in Java. It converts a given character to its titlecase equivalent based on the Unicode standard. Titlecase characters are typically used to capitalize the first letter of words in titles and headings, and they differ from uppercase characters in some languages.

toTitleCase()() Method Syntax

The Character.toTitleCase() method has two overloaded versions:

toTitleCase(char ch)

public static char toTitleCase(char ch)
  • ch: The character to be converted to titlecase.

The method returns:

  • The titlecase equivalent of the character.

toTitleCase(int codePoint)

public static int toTitleCase(int codePoint)
  • codePoint: The Unicode code point to be converted to titlecase.

The method returns:

  • The titlecase equivalent of the code point.

Examples

Converting Single Characters

The toTitleCase(char ch) method can be used to convert a single character to its titlecase equivalent.

Example

public class ToTitleCaseExample {
    public static void main(String[] args) {
        char lowerCaseChar = 'a';
        char titleCaseChar = Character.toTitleCase(lowerCaseChar);

        System.out.println("Titlecase of 'a': " + titleCaseChar);
    }
}

Output:

Titlecase of 'a': A

In this example, the method converts the lowercase letter 'a' to its titlecase equivalent 'A'.

Handling Non-Alphabetic Characters

The toTitleCase() method returns the character unchanged if it is not an alphabetic character.

Example

public class NonAlphabeticCharacterExample {
    public static void main(String[] args) {
        char digitChar = '1';
        char specialChar = '$';

        char titleDigitChar = Character.toTitleCase(digitChar);
        char titleSpecialChar = Character.toTitleCase(specialChar);

        System.out.println("Titlecase of '1': " + titleDigitChar);
        System.out.println("Titlecase of '$': " + titleSpecialChar);
    }
}

Output:

Titlecase of '1': 1
Titlecase of '$': $

In this example, the method returns the non-alphabetic characters '1' and '$' unchanged.

Converting Unicode Code Points

The toTitleCase(int codePoint) method can be used to convert a Unicode code point to its titlecase equivalent.

Example

public class ToTitleCaseCodePointExample {
    public static void main(String[] args) {
        int lowerCodePoint = 'b';
        int titleCodePoint = Character.toTitleCase(lowerCodePoint);

        System.out.println("Titlecase of code point 'b': " + (char) titleCodePoint);
    }
}

Output:

Titlecase of code point 'b': B

Handling Special Unicode Characters

The toTitleCase(int codePoint) method works with special Unicode characters as well.

Example

public class SpecialUnicodeCharacterExample {
    public static void main(String[] args) {
        int lowerGreekSigma = '\u03C3'; // Greek small letter Sigma
        int titleGreekSigma = Character.toTitleCase(lowerGreekSigma);

        System.out.println("Titlecase of Greek Sigma: " + (char) titleGreekSigma);
    }
}

Output:

Titlecase of Greek Sigma: Σ

In this example, the method converts the Greek small letter Sigma to its titlecase equivalent.

Real-World Use Case

Converting Text to Title Case

In a real-world application, you might need to convert the first letter of each word in a string to title case.

Example

public class ConvertStringToTitleCaseExample {
    public static void main(String[] args) {
        String text = "hello world!";
        StringBuilder titleText = new StringBuilder();

        boolean capitalizeNext = true;
        for (char ch : text.toCharArray()) {
            if (capitalizeNext) {
                titleText.append(Character.toTitleCase(ch));
                capitalizeNext = false;
            } else {
                titleText.append(ch);
            }
            if (Character.isWhitespace(ch)) {
                capitalizeNext = true;
            }
        }

        System.out.println("Converted text: " + titleText.toString());
    }
}

Output:

Converted text: Hello World!

In this example, the code converts the first letter of each word in the input string to title case.

Conclusion

The Character.toTitleCase() method in Java is a simple and effective way to convert characters to their titlecase equivalents. By understanding how to use this method and its overloaded versions, you can efficiently handle text processing tasks that involve converting characters to title case in your Java applications. Whether you are converting individual characters, handling Unicode code points, or processing entire strings, the toTitleCase() method provides a reliable solution for these tasks.

Comments