Java Big Integer Value
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dyuman Joshi
am 1 Feb. 2022
Kommentiert: Dyuman Joshi
am 15 Feb. 2022
I was working with BigIntegers to solve a problem on Cody, where I got stuck upon something.
import java.math.*
BigInteger(10)
BigInteger(1234)
BigInteger(num2str(1234))
I tried to find why this happens but I couldn't find any useful resources. I have no knowledge of Java if anyone needs to know.
Is the default input to BigInteger a string/character array? (Which I suspect so)
Also an odd behaviour (which I don't understand)? Can someone explan why this happens?
for i=1:11
BigInteger(2^i+1)
end
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 1 Feb. 2022
The single-parameter form of BigInteger with a numeric parameter is
Translates a byte array containing the two's-complement binary representation of a BigInteger into a BigInteger."
So when you pass in a numeric value, it converts the numeric value to a signed byte.
When you pass in the result of num2str() you are using a different constructor,
Translates the decimal String representation of a BigInteger into a BigInteger."
5 Kommentare
Walter Roberson
am 15 Feb. 2022
One byte holds 8 bits, and 2^8 = 256 .
The BigInteger class always uses full bytes -- you cannot define a BigInteger that is (for example) 11 bits long
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!