Java.lang.Character.getNumericValue() 方法

描述

java.lang.Character.getNumericValue(int codePoint) 返回指定字符(Unicode 代码点)表示的 int 值。 例如,字符 '\u216C'(罗马数字 50)将返回一个值为 50 的 int。

大写字母 A-Z('\u0041' 到 '\u005A')、小写字母('\u0061' 到 '\u007A')和全角变体('\uFF21' 到 '\uFF3A' 和 '\uFF41' 通过 '\uFF5A') 形式具有从 10 到 35 的数值。这与 Unicode 规范无关,Unicode 规范不为这些 char 值分配数值。

如果字符没有数值,则返回 -1。 如果字符具有不能表示为非负整数的数值(例如,小数值),则返回 -2。


声明

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

public static int getNumericValue(int codePoint)

参数

codePoint − 要转换的字符(Unicode 代码点)


返回值

此方法返回字符的数值,作为非负 int 值; -2 如果字符的数值不是非负整数; -1 如果字符没有数值。


异常

NA


示例

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

package com.tutorialspoint;

import java.lang.*;

public class CharacterDemo {

   public static void main(String[] args) {

      // create 2 int primitives cp1, cp2
      int cp1, cp2;

      // assign values to cp1, cp2
      cp1 = 0x0068;
      cp2 = 0xff30;

      // create 2 int primitives i1, i2
      int i1, i2;

      // assign numeric values of cp1, cp2 to i1, i2
      i1 = Character.getNumericValue(cp1);
      i2 = Character.getNumericValue(cp2);

      String str1 = "Numeric value of code point cp1 is " + i1;
      String str2 = "Numeric value of code point cp2 is " + i2;

      // print i1, i2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

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

Numeric value of code point cp1 is 17
Numeric value of code point cp2 is 25