Character.digit() in Java with examples

The java.lang.Character.digit() is an inbuilt method in java which returns the numeric value of the character ch in the specified radix. It returns -1 if the radix is not in the range MIN_RADIX <= radix <= MAX_RADIX or if the value of ch is not a valid digit in the specified radix. A character is a valid digit if at least one of the following is true:

  • The method isDigit is true of the character and the Unicode decimal digit value of the character (or its single-character decomposition) is less than the specified radix. In this case the decimal digit value is returned.
  • The character is one of the uppercase Latin letters β€˜A’ through β€˜Z’ and its code is less than radix + β€˜A’ – 10. In this case, ch – β€˜A’ + 10 is returned.
  • The character is one of the lowercase Latin letters β€˜a’ through β€˜z’ and its code is less than radix + β€˜a’ – 10. In this case, ch – β€˜a’ + 10 is returned.
  • The character is one of the fullwidth uppercase Latin letters A (β€˜\uFF21’) through Z (β€˜\uFF3A’) and its code is less than radix + β€˜\uFF21’ – 10. In this case, ch – β€˜\uFF21’ + 10 is returned.
  • The character is one of the fullwidth lowercase Latin letters a (β€˜\uFF41’) through z (β€˜\uFF5A’) and its code is less than radix + β€˜\uFF41’ – 10. In this case, ch – β€˜\uFF41’ + 10 is returned.

Syntax:

public static int digit(char ch, int radix)

Parameters:The function accepts two parameters which are described below:

  • ch- This is a mandatory parameter which specifies the character to be converted.
  • radix- This is a mandatory parameter which specifies radix.

Return value: This method returns the numeric value represented by the character in the specified radix.

Below programs demonstrates the above method:

Program 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);
    }
}


Output:

Numeric value of 3 in radix 5 is 3
Numeric value of 6 in radix 15 is 6

Program 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);
    }
}


Output:

Numeric value of a in radix 5 is -1
Numeric value of z in radix 15 is -1

Reference: https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#digit(char,%20int)



Contact Us