Java Character toChars()方法

java.lang.Character.toChars(int codePoint, char[] dst, int dstIndex) 指定字符(Unicode代码点),以它的UTF-16表示形式转换。

如果指定的代码点为BMP(基本多文种平面或平面0)的值,同样的值存储在dst[dstIndex],返回1。

如果指定的代码点是一个辅助字符,它的替代值存储在dst[dstIndex] (高代理)和dst[dstIndex+1] (低替代),2返回。

1 语法

public static int toChars(int codePoint, char[] dst, int dstIndex)

2 参数

codePoint:一个Unicode代码点

dst:char,其中编码点的UTF-16值存储阵列

dstIndex:开始索引,dst数组,其中转换的存储值

3 返回值

此方法返回1,如果代码点为BMP代码点,返回2,如果代码点是一个增补代码点。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java Character toChars()方法
 */
import java.lang.*;

public class CharacterDemo {

   public static void main(String[] args) {

      // create an int primitive cp and assign value
      int cp = 0x0036;

      // create an int primitive res
      int res;

      /**
       *  create a char array dst and assign UTF-16 value of cp
       *  to it using toChars method
       */
      char dst[] = Character.toChars(cp);

      // check if cp is BMP or supplementary code point using toChars
      res = Character.toChars(cp, dst, 0);

      String str1 = "It is a BMP code point";
      String str2 = "It is a is a supplementary code point";

      // print res value
      if ( res == 1 ){
         System.out.println( str1 );
      }
      else if ( res == 2 ){
         System.out.println( str2 );
      }
   }
}

输出结果为:

It is a BMP code point

 

热门文章

优秀文章