1

Ma question est que, je veux multiplier 2 nombre qui a 1 million de chiffres. Quand j'ai essayé d'attribuer 1 million de numéro à BigInteger, le compilateur me donne une erreur. L'erreur est la suivante: "chaîne constante trop longue".Comment puis-je conserver 1 million de chiffres en Java?

+0

cette aide? https://stackoverflow.com/questions/12088436/what-does-biginteger-having-no-limit-mean –

+0

vous avez une chaîne longue d'un million de chiffres représentant un nombre? Quel genre de calcul faites-vous? Il semble que je sois capable de créer une instance BigInteger avec un million de chiffres. – Renato

Répondre

3

BigInteger est en effet le moyen de stocker de tels entiers, même si des centaines ou quelques milliers de chiffres sont des cas d'utilisation plus typiques. Cependant, les fichiers de classe Java ont des limitations qui ne permettent pas de coder en dur un nombre littéral aussi grand.

À la place, stockez le numéro dans un fichier et lisez-le au moment de l'exécution. Si le fichier contient une représentation textuelle en décimal, hexadécimal, ou une autre base, vous pouvez read it into a String et le transmettre à the BigInteger constructor. Si le fichier contient les bits premières, load it to a byte[] et utiliser un different constructor.