Sto cercando un tipo di dati con una capacità esatta da 0 a 2^64 - 1. Sappiamo che Java così com'è non supporta il tipo di dati char "senza segno".Come implementare un int non firmato a 64 bit in Java utilizzando la classe BigInteger?
C'è una classe BigInteger che consente la creazione di numeri più grandi che un tipo di dati lungo non può supportare. Ma non sono sicuro di come la classe BigInteger possa servire al mio scopo. La classe BigInteger consente l'assegnazione solo tramite i costruttori. Vedo la seguente possibilità ma genera un numero casuale.
BigInteger(int numBits, Random rnd)
Constructs a randomly generated BigInteger, uniformly distributed over the range 0 to (2^numBits - 1), inclusive.
non riesco a vedere alcun setValue (x) tipo di API che sarebbe lascia decidere il mio valore a questo BigInteger. Come implementarlo usando la classe BigInteger o esiste un altro modo per farlo? Per favore pubblica un esempio di codice.
PS: la domanda inviata da qualcuno here non ha dettagli di implementazione.
Puoi chiarire esattamente perché hai bisogno del tipo di dati e di cosa stai cercando di fare? Ci possono essere modi per semplificare il problema ... – Alnitak
C++ supporta tale tipo di dati.Sto interagendo con C++ e ho pensato che sarebbe stato meglio avere un datatype simile anche a Java piuttosto che dover manipolare i dati e convertirli in C++. –