Open In App

StringBuffer codePointBefore() method in Java with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

The codePointBefore() method of StringBuffer class is a method used to take an index as a parameter and returns the “Unicode number” of the character present before that index. 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 take one parameter index which is the 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 illustrate the codePointBefore() method:

Example 1:




// Java program to demonstrate
// the codePointBefore() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer
            str
            = new StringBuffer("GeeksForGeeks Contribute");
  
        // get unicode of char at index 13
        // using codePointBefore() method
        int unicode = str.codePointBefore(14);
  
        // print char and Unicode
        System.out.println("Unicode of character"
                           + " at position 13 = "
                           + unicode);
    }
}


Output:

Unicode of character at position 13 = 32

Example 2:To demonstrate IndexOutOfBoundsException




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


Output:

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

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



Last Updated : 04 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads