Java LanguageBigInteger


introduzione

La classe BigInteger viene utilizzata per operazioni matematiche che coinvolgono numeri interi grandi con grandezze troppo grandi per tipi di dati primitivi. Ad esempio 100-factorial è composto da 158 cifre, molto più grandi di quelle long . BigInteger fornisce analoghi a tutti gli operatori di interi primitivi di Java e tutti i metodi pertinenti di java.lang.Math e alcune altre operazioni.

Sintassi

  • BigInteger variable_name = new BigInteger ("12345678901234567890"); // un intero decimale come stringa
  • BigInteger variable_name = new BigInteger ("1010101101010100101010011000110011101011000111110000101011010010", 2) // un numero intero binario come stringa
  • BigInteger variable_name = new BigInteger ("ab54a98ceb1f0800", 16) // un numero intero esadecimale come stringa
  • BigInteger variable_name = new BigInteger (64, new Random ()); // un generatore di numeri pseudocasuali che fornisce 64 bit per costruire un numero intero
  • BigInteger variable_name = new BigInteger (nuovo byte [] {0, -85, 84, -87, -116, -21, 31, 10, -46}); // ha firmato la rappresentazione a complemento di due di un intero (big endian)
  • BigInteger variable_name = new BigInteger (1, new byte [] {- ​​85, 84, -87, -116, -21, 31, 10, -46}); // rappresentazione di complementi a due senza segno di un numero intero positivo (big endian)

Osservazioni

BigInteger è immutabile. Quindi non puoi cambiare il suo stato. Ad esempio, quanto segue non funzionerà in quanto la sum non verrà aggiornata a causa dell'immutabilità.

BigInteger sum = BigInteger.ZERO;
for(int i = 1; i < 5000; i++) {
   sum.add(BigInteger.valueOf(i));  
}

Assegna il risultato alla variabile sum per farlo funzionare.

sum = sum.add(BigInteger.valueOf(i));

Java SE 8

La documentazione ufficiale di BigInteger afferma che BigInteger implementazioni di BigInteger dovrebbero supportare tutti i numeri interi compresi tra -2 2147483647 e 2 2147483647 (esclusivo). Ciò significa che BigInteger può avere più di 2 miliardi di bit!

BigInteger Esempi correlati