Open In App

StringBuilder codePointBefore() in Java with Examples

Last Updated : 28 Dec, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

The codePointBefore() method of StringBuilder class takes an index as a parameter and returns the “Unicode number” of the character before the specified index in String contained by StringBuilder. The index refers to char values (Unicode code units) and the value of index must lie between 0 to length-1. If the char value at (index – 1) is in the low-surrogate range, char at (index – 2) is not negative with value is in the high-surrogate range, then the supplementary code point value of the surrogate pair is returned by method. If the char value at index – 1 is an unpaired low-surrogate or a high-surrogate, the surrogate value is returned. Syntax:

public int codePointBefore(int index)

Parameters: This method accepts one int type parameter index represents index of the character following the character whose unicode value to be returned. Return Value: This method returns “unicode number” of the character before the given index. Exception: This method throws IndexOutOfBoundsException when index is negative or greater than or equal to length(). Below programs demonstrate the codePointBefore() method of StringBuilder Class: Example 1: 

Java




// Java program to demonstrate
// the codePointBefore() Method.
 
class GFG {
    public static void main(String[] args)
    {
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("WelcomeGeeks");
 
        // print string
        System.out.println("String is "
                           + str.toString());
 
        // get unicode of char at index 1
        // using codePointBefore() method
        int unicode = str.codePointBefore(2);
 
        // print char and Unicode
        System.out.println("Unicode of character"
                           + " at position 1 = " + unicode);
 
        // get unicode of char at index 10
        // using codePointBefore() method
        unicode = str.codePointBefore(11);
 
        // print char and Unicode
        System.out.println("Unicode of character"
                           + " at position 10 = "
                           + unicode);
    }
}


Output:

String is WelcomeGeeks
Unicode of character at position 1 = 101
Unicode of character at position 10 = 107

Example 2: To demonstrate IndexOutOfBoundsException 

Java




// Java program to demonstrate
// exception thrown by codePointBefore() Method.
 
class GFG {
    public static void main(String[] args)
    {
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("WelcomeGeeks");
 
        try {
 
            // get unicode of char at position length + 2
            int unicode = str.codePointBefore(
                str.length() + 2);
        }
 
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}


Output:

Exception: java.lang.StringIndexOutOfBoundsException:
 String index out of range: 14

Reference: https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#codePointBefore(int)



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads