Java Character digit()及示例
java.lang.Character.digit()是java中的一个内置方法,用于返回字符ch在指定小数中的数字值。如果radix不在MIN_RADIX <= radix <= MAX_RADIX范围内,或者ch的值不是指定radix中的有效数字,它将返回-1。如果以下情况中至少有一个为真,那么一个字符就是一个有效的数字。
- 方法isDigit对该字符为真,并且该字符(或其单字符分解)的Unicode十进制数字值小于指定的拉德数。在这种情况下,将返回十进制数字值。
- 该字符是大写拉丁字母’A’到’Z’之一,其代码小于radix + ‘A’ – 10。在这种情况下,将返回ch – ‘A’ + 10。
- 该字符是小写拉丁字母’a’到’z’中的一个,其代码小于radix + ‘a’ – 10。在这种情况下,将返回ch – ‘a’ + 10。
- 该字符是全角大写拉丁字母A(’\uFF21’)到Z(’\uFF3A’)中的一个,其代码小于radix + ‘\uFF21’ – 10。在这种情况下,会返回ch – ‘\uFF21’ + 10。
- 该字符是全宽小写拉丁字母a(’\uFF41’)到z(’\uFF5A’)之一,其代码小于radix + ‘\uFF41’ – 10。在这种情况下,会返回ch – ‘\uFF41’ + 10。
语法
public static int digit(char ch, int radix)
参数: 该函数接受两个参数,描述如下。
- ch- 这是一个强制性参数,指定要转换的字符。
- radix- 这是一个强制性的参数,指定了radix。
返回值: 该方法返回由指定弧度的字符所代表的数字值。
下面的程序演示了上述方法。
程序1 :
// Java program to illustrate the
// Character.digit() method
import java.lang.*;
public class gfg {
public static void main(String[] args)
{
// create and assign value
// to 2 character objects
char c1 = '3', c2 = '6';
// assign the numeric value of c1 to in1 using radix
int in1 = Character.digit(c1, 5);
System.out.println("Numeric value of " + c1 + " in radix 5 is " + in1);
// assign the numeric value of c2 to in2 using radix
int in2 = Character.digit(c2, 15);
System.out.println("Numeric value of " + c2 + " in radix 15 is " + in2);
}
}
输出:
Numeric value of 3 in radix 5 is 3
Numeric value of 6 in radix 15 is 6
程序2
// Java program to illustrate the
// Character.digit() method
// when -1 is returned
import java.lang.*;
public class gfg {
public static void main(String[] args)
{
// create and assign value
// to 2 character objects
char c1 = 'a', c2 = 'z';
// assign the numeric value of c1 to in1 using radix
int in1 = Character.digit(c1, 5);
System.out.println("Numeric value of " + c1 + " in radix 5 is " + in1);
// assign the numeric value of c2 to in2 using radix
int in2 = Character.digit(c2, 15);
System.out.println("Numeric value of " + c2 + " in radix 15 is " + in2);
}
}
输出:
Numeric value of a in radix 5 is -1
Numeric value of z in radix 15 is -1
参考 : https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#digit(char,%20int)