Estoy buscando un tipo de datos con una capacidad exacta de 0 a 2^64 - 1. Sabemos que Java tal como es no admite el tipo de datos de restricción de caracteres 'sin signo'.¿Cómo implementar un int sin firmar de 64 bits en Java utilizando la clase BigInteger?
Hay clase BigInteger que permite la creación de un mayor número de largo que tipo de datos no puede apoyar. Pero no estoy seguro de cómo la clase BigInteger serviría para mi propósito. La clase BigInteger permite la asignación solo a través de constructores. Veo la siguiente posibilidad pero genera un número aleatorio.
BigInteger(int numBits, Random rnd)
Constructs a randomly generated BigInteger, uniformly distributed over the range 0 to (2^numBits - 1), inclusive.
no puedo ver cualquier tipo setValue (x) de la API que me dejaran elegir mi propio valor a esta BigInteger. ¿Cómo implementar esto usando la clase BigInteger o hay alguna otra forma de hacerlo? Por favor, publique el código de muestra.
PD: La pregunta publicada por alguien here no tiene detalles de implementación.
¿Puedes aclarar exactamente por qué necesitas el tipo de datos y qué intentas hacer con él? Puede haber formas de simplificar el problema ... – Alnitak
C++ admite dicho tipo de datos.Estoy interactuando con C++ y pensé que sería mejor tener un tipo de datos similar en Java también en lugar de tener que manipular los datos y convertirlos en C++. –