Datatype to store 20 digit number

前端 未结 4 1935
说谎
说谎 2020-12-11 17:17

I have a number of 20 digit, which datatype will support to store this number? I have tried long, double but I \'m getting out of range.

Number = 485656649684835144

相关标签:
4条回答
  • 2020-12-11 17:42
    BigInteger i = new BigInteger("48565664968483514466");
    
    0 讨论(0)
  • 2020-12-11 17:46

    To convert your number in base 36:

    BigInteger number = new BigInteger("48565664968483514466");
    String numberInBase36 = number.toString(36);
    System.out.println(numberInBase36);
    
    0 讨论(0)
  • 2020-12-11 17:50
    BigInteger:
    

    The BigInteger class allocates as much memory as it needs to hold all the bits of data it is asked to hold and also provides operations analogues to all of Java's primitive integer operators and for all relevant methods from java.lang.Math.

    Declare it as

    BigInteger bi1 =  new BigInteger("12345678900123");
    
    0 讨论(0)
  • 2020-12-11 18:04

    when I'm trying to use new BigInteger(number), I'm getting literal of type int is out of range

    The syntax you are looking for is

    BigInteger n = new BigInteger("48565664968483514466");
    

    with the numeric literal as a String, since the primitive integer literals cannot hold a number this large.

    0 讨论(0)
提交回复
热议问题