2015-04-28 60 views
3

後,我經過這裏看了很多,不能完全找到,爲什麼這條線是錯誤的:修改BIGINTEGER劃分的Java

ArrayList <BigInteger> data = new ArrayList(); 
int [] primes = new int[25];  
... 
// Some initializing 
... 
data.get(i) = data.get(i).divide(BigInteger.valueOf(primes[place])); //<---- 
... 
// Rest of the code 

要求:變量; 找到:值..我做錯了什麼?

回答

6

首先,你應該解決您的Raw Type(我寧願在List接口)像

List<BigInteger> data = new ArrayList<>(); 

,那麼你需要使用set因爲你不能分配到的返回值get就是這樣。

data.set(i, data.get(i).divide(BigInteger.valueOf(primes[place]))); 

此外,值得注意的是,BigInteger(s)是(每Javadoc中)不變的任意精度的整數

5

=只能用於分配變量,字段和數組元素。您可能想撥打set

data.set(i, data.get(i).divide(...etc...));