我得到的併發修改異常錯誤與此代碼:併發修改異常的HashSet的
Iterator iterateBids = bidders.iterator();
Person nextBidder;
bidders.add(bid.getBidder());
if (highestBid == null) {
// There is no previous bid.
highestBid = bid;
while (iterateBids.hasNext()) {
//nextBidder = (Person) iterateBids.next();
((Person) iterateBids.next()).bidUpdate(this, bid);
}
return true;
} else if (bid.getValue() > highestBid.getValue()) {
// The bid is better than the previous one.
highestBid = bid;
while (iterateBids.hasNext()) {
nextBidder = (Person) iterateBids.next();
nextBidder.bidUpdate(this, bid);
}
return true;
}
投標人是一個包含HashSet的人。該錯誤發生在「nextBidder =(Person)iterateBids.next();」 代碼查找比當前出價更高的出價。如果更高,它會遍歷投標人集合並執行bidUpdate()方法。
我如何修改和迭代在同一時間?
約在哪裏你得到的例外呢? – Marco