StringBuilder offsetByCodePoints() method in Java with Examples

The offsetByCodePoints() method of StringBuilder class returns the index within this String contained by StringBuilder that is offset from the index passed as parameter by codePointOffset code points. Unpaired surrogates lies between index and codePointOffset count as one code point each.

Syntax:

public int offsetByCodePoints(int index,
                       int codePointOffset)

Parameters: This method takes two parameters:

  • index: the index to be offset
  • codePointOffset: the offset in code points

Return Value: This method returns the index within this sequence.

Exception: This method throws IndexOutOfBoundsException if any one below is true:

  • index < 0 or index > length of the sequence.
  • codePointOffset > 0 and the subsequence starting with index has fewer than codePointOffset code points
  • codePointOffset < and the subsequence before index has fewer than the absolute value of codePointOffset code points.

Below programs demonstrate the offsetByCodePoints() method of StringBuilder Class:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// the offsetByCodePoints() 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 = "
                           + str.toString());
  
        // returns the index within this sequence
        int returnvalue = str.offsetByCodePoints(1, 4);
  
        // prints the index
        System.out.println("Index = " + returnvalue);
    }
}

chevron_right


Output:

String = WelcomeGeeks
Index = 5

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// the offsetByCodePoints() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("India Is great");
  
        // print string
        System.out.println("String = " + str.toString());
  
        // returns the index within this sequence
        int returnvalue = str.offsetByCodePoints(2, 9);
  
        // prints the index
        System.out.println("Index = " + returnvalue);
    }
}

chevron_right


Output:

String = India Is great
Index = 11

Example 3: To demonstrate IndexOutOfBoundException

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// Exception thrown by offsetByCodePoints() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("India");
  
        try {
  
            // returns the index within this sequence
            int returnvalue = str.offsetByCodePoints(2, 9);
  
            // prints the index
            System.out.println("Index = " + returnvalue);
        }
  
        catch (IndexOutOfBoundsException e) {
            System.out.println("Exception: " + e);
        }
    }
}

chevron_right


Output:

Exception: java.lang.IndexOutOfBoundsException

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



My Personal Notes arrow_drop_up

I am a Developer I love to code and bring my ideas alive

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.