Java.lang.Character.offsetByCodePoints() 方法

描述

java.lang.Character.offsetByCodePoints(CharSequence seq, int index, int codePointOffset) 返回给定字符序列中的索引,该索引与给定索引偏移 codePointOffset 代码点。

index 和 codePointOffset 给出的文本范围内的未配对代理项分别计为一个代码点。


声明

以下是 java.lang.Character.offsetByCodePoints() 方法的声明。

public static int offsetByCodePoints(CharSequence seq, int index, int codePointOffset)

参数

  • seq − 字符序列
  • index − 要偏移的索引
  • codePointOffset − 代码点的偏移量

返回值

该方法返回字符序列内的索引


异常

  • NullPointerException − 如果 seq 为空

  • IndexOutOfBoundsException − 如果 index 为负数或大于 char 序列的长度,或者如果 codePointOffset 为正数并且以 index 开头的子序列的代码点少于 codePointOffset,或者如果 codePointOffset 为负数并且 index 之前的子序列的绝对值小于 codePointOffset 码点。


示例

下面的例子展示了 lang.Character.offsetByCodePoints() 方法的使用。

package com.tutorialspoint;

import java.lang.*;

public class CharacterDemo {

   public static void main(String[] args) {

      // create a CharSequence seq and assign value
      CharSequence seq = "Hello World";

      // create an int primitive res
      int res;

      // assign result of offsetByCodePoints on seq to res
      res = Character.offsetByCodePoints(seq, 3, 8);

      String str = "The index within the char sequence seq is " + res;

      // print res value
      System.out.println( str );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

The index within the char sequence seq is 11