Tôi đang chơi với các số trong Java và muốn xem số lượng lớn mà tôi có thể thực hiện. Đó là sự hiểu biết của tôi rằng BigInteger có thể giữ một số kích thước vô hạn, miễn là máy tính của tôi có đủ bộ nhớ để giữ một số như vậy, đúng không?BigInteger.pow (BigInteger)?
Vấn đề của tôi là BigInteger.pow chỉ chấp nhận một int, không phải BigInteger khác, có nghĩa là tôi chỉ có thể sử dụng một số lên tới 2.147.483.647 làm số mũ. Có thể sử dụng lớp BigInteger như vậy không?
BigInteger.pow(BigInteger)
Cảm ơn.
'BigInteger' không thể đại diện cho số lượng kích thước vô hạn, nó chỉ có thể đại diện cho số" gần "kích thước tùy ý. Số đại diện tối đa tùy thuộc vào việc triển khai của bạn (cấu trúc dữ liệu nội bộ) và bộ nhớ heap có sẵn. –
tại sao bạn cần? Giống như Saeed nói dưới đây thậm chí còn nhỏ nhất như vậy giá trị mà int là không đủ là quá lớn ... – Fakrudeen
Nó chỉ có ý nghĩa khi bạn tính toán modulo một 'BigInteger', cho trường hợp đó nó tồn tại: http://download.oracle.com/javase /6/docs/api/java/math/BigInteger.html#modPow(java.math.BigInteger,%20java.math.BigInteger) – starblue