Open In App

StringBuilder offsetByCodePoints() method in Java with Examples

Last Updated : 20 Oct, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

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:




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


Output:

String = WelcomeGeeks
Index = 5

Example 2:




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


Output:

String = India Is great
Index = 11

Example 3: To demonstrate IndexOutOfBoundException




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


Output:

Exception: java.lang.IndexOutOfBoundsException

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



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

Similar Reads