我有一個計算器我試圖做的一個問題。 首先,我必須說我的想法,這個想法是,我第一次在一個ArrayList中分離出來的一切,例如:ConcurrentModificationException的在Java計算器
[12, +, (, 236, -, 7, ×, 23,), +, 5!, -, 3, ^, 5]
接下來,我刪除列表中的部分,並用一個數字代替它,所以如果我們使用前面的例子:
[12, +, (, 236, -, 7, ×, 23,), +, 5!, -, 3, ^, 5] ->
[12, +, 215, +, 5!, -, 3, ^, 5] ->
[12, +, 215, +, 120, -, 243] and so on..
但是我有一個問題。 我計算[3, ^, 5]
的方式是: 首先我檢查是否有在通過用於循環該ArrayList ^
,然後我使2個變量之一,其具有的3
值第一數目0
的索引和所述另一個2
具有的5
值,然後我做第三個變量是答案,之後我轉這雙爲一個字符串的答案,然後我刪除3
,^
和5
從列表中的第一個數字的加答案3
這是0
,問題是當我嘗試答案變成一個字符串的例外發生(ConcurrentModificationException
),我搜索一下吧,我發現,由於某些原因,我不能把一個變種從類型到我的情況類型iable。我想知道是什麼原因,以及如何解決它。
重複的https://stackoverflow.com/questions/223918/iterating-through-a-collection-avoiding-concurrentmodificationexception-when-re/此外,它是更好地看到和閱讀它的描述的實際代碼 –