我有一個循環通過ArrayList
的for循環。Java三元運算符和設置循環索引值
如果條件是滿足的for循環:
- 我刪除從
ArrayList
- 當前元素減少
ArrayList
局部變量的大小 - 減少for循環的指數,像這樣,檢查以確保它們永遠不會低於零。
,我們剛纔刪除的ArrayList
的最後一個元素的情況:
i = (i > 0) ? i-- : i;
我的問題是,上面並沒有減少1我當我> 0。我用三元運營商無數次,但從未見過這種行爲。我測試過我確實是> 0,並且i--部分被調用。它根本不會降低我的價值。取消0值檢查並簡單地運行i--;
的確會降低我的預期。
編輯2:好吧,有人編輯了我最後的編輯,我提到我在這種情況下特別不使用ListIterator,因爲循環本身的性能敏感的本質,在Android代碼的關鍵部分。
當然要歸功於 – 2011-05-23 16:24:11