Java.lang.Character.offsetByCodePoints() 方法
描述
java.lang.Character.offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset) 返回给定 char 子数组中从给定索引偏移 codePointOffset 的索引 代码点。
start 和 count 参数指定 char 数组的子数组。 由 index 和 codePointOffset 给出的文本范围内的未配对代理分别计为一个代码点。
声明
以下是 java.lang.Character.offsetByCodePoints() 方法的声明。
public static int offsetByCodePoints(char[] a, int start, int count, int index, int codePointOffset)
参数
- a − 字符数组
- start − 子数组第一个字符的索引
- count − 以字符为单位的子数组的长度
- index − 要偏移的索引
- codePointOffset − 代码点的偏移量
返回值
该方法返回子数组中的索引
异常
NullPointerException − 如果 a 为空
IndexOutOfBoundsException − 如果 start 或 count 为负数,或者如果 start + count 大于给定数组的长度,或者如果 index 小于 start 或大于 start + count,或者如果 codePointOffset 为正且文本范围以 index 开头和结尾 带有 start + count - 1 的代码点少于 codePointOffset ,或者如果 codePointOffset 为负数并且以 start 开始并以 index - 1 结尾的文本范围少于 codePointOffset 代码点的绝对值。
示例
下面的例子展示了 lang.Character.offsetByCodePoints() 方法的使用。
package com.tutorialspoint;
import java.lang.*;
public class CharacterDemo {
public static void main(String[] args) {
// create a char array c and assign values
char[] c = new char[] { 'a', 'b', 'c', 'd', 'e', 'f' };
// craete 2 int primitives start, count and assign values
int start = 1;
int count = 5;
// create an int primitive res
int res;
// assign result of offsetByCodePoints on subarray of c to res
res = Character.offsetByCodePoints(c, start, count, 2, 4);
String str = "The index within the subarray of c is " + res;
// print res value
System.out.println( str );
}
}
让我们编译并运行上面的程序,这将产生下面的结果 −
The index within the subarray of c is 6

