Java-lang-character-offsetbycodepoints-sequence

提供:Dev Guides
移動先:案内検索

Java.lang.Character.offsetByCodePoints()メソッド

説明

  • java.lang.Character.offsetByCodePoints(CharSequence seq、int index、int codePointOffset)*は、指定されたインデックスからcodePointOffsetコードポイントだけオフセットされた、指定されたcharシーケンス内のインデックスを返します。

indexとcodePointOffsetで指定されたテキスト範囲内のペアになっていないサロゲートは、それぞれ1つのコードポイントとしてカウントされます。

宣言

以下は* java.lang.Character.offsetByCodePoints()*メソッドの宣言です

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

パラメーター

  • seq -文字シーケンス
  • index -オフセットされるインデックス
  • codePointOffset -コードポイントのオフセット

戻り値

このメソッドは、charシーケンス内のインデックスを返します

例外

  • NullPointerException -seqがnullの場合
  • IndexOutOfBoundsException -インデックスが負またはcharシーケンスの長さより大きい場合、またはcodePointOffsetが正でindexで始まるサブシーケンスがcodePointOffsetコードポイントより少ない場合、またはcodePointOffsetが負でインデックスの前のサブシーケンスがより小さい場合codePointOffsetコードポイントの絶対値。

次の例は、lang.Character.offsetByCodePoints()メソッドの使用方法を示しています。

package com.finddevguides;

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