輸入:如何在java中處理大於BigInteger的大數字?
BigInteger l = BigInteger.valueOf(111111111111111110);
編譯器錯誤消息
整數數目太大
我的目標是連續地遞減給定大量的直到某一值(說K)。
我該如何做到這一點?
輸入:如何在java中處理大於BigInteger的大數字?
BigInteger l = BigInteger.valueOf(111111111111111110);
編譯器錯誤消息
整數數目太大
我的目標是連續地遞減給定大量的直到某一值(說K)。
我該如何做到這一點?
整數數量太大
爲什麼它給了一個錯誤的原因是因爲你已經傳遞到valueOf(...)
的參數類型是int
(這是除非你指定默認的類型否則),這是有限制的,並且你已經超過了這個限制,所以錯誤。
BigInteger l = BigInteger.valueOf(111111111111111110); // argument is int, so it will give a compiler error
改爲使用long
參數。
BigInteger value = BigInteger.valueOf(111111111111111110L);
或使用string
參數。
BigInteger value = new BigInteger("111111111111111110");
請用'L'來代表'long'後綴。 'L'比'l'更容易閱讀,'l'可以用一些字體解釋爲'1'。 – Pshemo
@Pshemo確定的事情。 :) –
輸入如何轉換爲BigInteger? – kennytm
「大於BigInteger」是什麼意思? –
「如何在java中處理大於BigInteger的大數?」 BigInteger唯一的限制就是你的RAM。所以你的數量不可能超過BigInteger所能容納的數量。 –