StringBuffer offsetByCodePoints() method in Java with Examples
Last Updated :
04 Dec, 2018
Improve
The offsetByCodePoints() method of StringBuffer class returns the index within this String contained by StringBuffer 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:
Java
Java
Java
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
- 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.
// Java program to demonstrate
// the offsetByCodePoints() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer
str
= new StringBuffer("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:
Example 2:
String = WelcomeGeeks Index = 5
// Java program to demonstrate
// the offsetByCodePoints() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer
str
= new StringBuffer("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:
Example 3: To demonstrate IndexOutOfBoundException
String = India Is great Index = 11
// Java program to demonstrate
// Exception thrown by offsetByCodePoints() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer
str
= new StringBuffer("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:
Reference:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuffer.html#offsetByCodePoints(int, int)
Exception: java.lang.IndexOutOfBoundsException