2014-09-15 23 views
6

Ho un numero di 20 cifre, che tipo di dati supporterà per memorizzare questo numero? Ho provato a lungo, il doppio ma sto uscendo dalla portata.Tipo di dati per memorizzare il numero di 20 cifre

Number = 48565664968483514466

Poi devo convertire questo numero per Base36 per generare il codice a barre.

+0

BigInteger - quando sto cercando di utilizzare nuove BigInteger (numero), mi sto letterale di tipo int è fuori portata. – DeepVeen

+0

Stai facendo qualche manipolazione numerica sul numero? – brso05

+3

BigInteger i = new BigInteger ("48565664968483514466"); – brso05

risposta

13
BigInteger: 

La classe BigInteger alloca la quantità di memoria è necessario per contenere tutti i bit di dati è chiamato a contenere e fornisce anche operazioni analoghi a tutti gli operatori interi primitivi di Java e per tutti i metodi pertinenti java.lang.Math.

dichiareremo come

BigInteger bi1 = new BigInteger("12345678900123"); 
0
BigInteger i = new BigInteger("48565664968483514466"); 
1

quando sono t rying di utilizzare le nuove BigInteger (numero), mi sto letterale di tipo int è fuori campo

La sintassi che stai cercando è

BigInteger n = new BigInteger("48565664968483514466"); 

con il letterale numerico come String, dal momento che i letterali interi primitivi non possono contenere un numero così grande.

2

per convertire il vostro numero in base 36:

BigInteger number = new BigInteger("48565664968483514466"); 
String numberInBase36 = number.toString(36); 
System.out.println(numberInBase36); 
Problemi correlati