Find wwsearcha Mortgage a
e.
o
tsearchrsearchm Mortgages vsearch²
×searchÈsearchÒ Mortgages ³ Findmortgagehomemortgages Ï Findmortgagehomemortgages µ Home Î Mortgages Ìsearch searchÉÉ Pages ç Home Ô Find ø Findmortgagehomemortgages ç Mortgages - Mortgages wsearchw Home qwww.aaaqe.comrsearchadsearchc Findmortgagehomemortgages m" href="http://www.findmortgagehomemortgages.com/Mortgages/Find/Mortgage/Home/Mortgages/sr/pages/progress/feed/Fast-Mortgages" />
e.
o
×searchÈsearchÒ Mortgages ³ Findmortgagehomemortgages Ï Findmortgagehomemortgages µ Home Î Mortgages Ìsearch ¡¡¡¡}
¡¡¡¡}
¡¡¡¡ÔËÐнá¹û²»ÊÇ£º
¡¡¡¡list.size()=5
¡¡¡¡after remove:list.size()=0
¡¡¡¡¾ÓÈ»ÊÇ£º
¡¡¡¡list.size()=5
¡¡¡¡after remove:list.size()=2
¡¡¡¡ÔÒò£ºListÿremoveµôÒ»¸öÔªËØÒԺ󣬺óÃæµÄÔªËØ¶¼»áÏòÇ°ÒÆ¶¯£¬´ËʱÈç¹ûÖ´ÐÐi=i+1£¬Ôò¸Õ¸ÕÒÆ¹ýÀ´µÄÔªËØÃ»Óб»¶ÁÈ¡¡£
¡¡¡¡½â¾ö·½·¨£º
¡¡¡¡1.µ¹¹ýÀ´±éÀúlist
¡¡¡¡for (int i = list.size()-1; i > =0; i--) {}
¡¡¡¡}
¡¡¡¡2.Ã¿ÒÆ³ýÒ»¸öÔªËØÒÔºóÔÙ°ÑiÒÆ»ØÀ´
¡¡¡¡for (int i = 0; i < list.size(); i++) {}
¡¡¡¡}
¡¡¡¡3.ʹÓÃiterator.remove()·½·¨É¾³ý
¡¡¡¡for (Iterator it = list.iterator(); it.hasNext();) {}
¡¡¡¡}
¡¡¡¡×¢Ò⣺ÔÚ±éÀúlist»òÕß˵ÔÚ±éÀú¼¯ºÏ¹ý³ÌÖУ¬Ö´ÐÐÁËɾ³ý¶¯×÷¾Í»á±¨´í
¡¡¡¡¹¤×÷ÖÐÅöµ½¸öConcurrentModificationException¡£´úÂëÈçÏ£º
¡¡¡¡List list = ...;
¡¡¡¡for(Iterator iter = list.iterator(); iter.hasNext();) {}
¡¡¡¡}
¡¡¡¡ÔÚÖ´ÐÐÁËremove·½·¨Ö®ºó£¬ÔÙÈ¥Ö´ÐÐÑ»·£¬iter.next()µÄʱºò£¬±¨java.util.ConcurrentModificationException(µ±È»£¬Èç¹ûremoveµÄÊÇ×îºóÒ»Ìõ£¬¾Í²»»áÔÙÈ¥Ö´ÐÐnext()²Ù×÷ÁË)
¡¡¡¡ÏÂÃæÀ´¿´Ò»ÏÂÔ´Âë
¡¡¡¡public interface Iterator<E> {}
¡¡¡¡public interface Collection<E> extends Iterable<E> {}
¡¡¡¡ÕâÀïÓÐÁ½¸öremove·½·¨
¡¡¡¡½ÓÏÂÀ´À´¿´¿´AbstractList
¡¡¡¡public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E> {}
¡¡¡¡public E next() {} catch(IndexOutOfBoundsException e) {}
¡¡¡¡}
¡¡¡¡public void remove() {} catch(IndexOutOfBoundsException e) {}
¡¡¡¡}
¡¡¡¡final void checkForComodification() {}
¡¡¡¡}
¡¡¡¡}
¡¡¡¡remove(Object o)ÔÚArrayListÖÐʵÏÖÈçÏ£º
¡¡¡¡public boolean remove(Object o) {}
¡¡¡¡} else {}
¡¡¡¡}
¡¡¡¡return false;
¡¡¡¡}
¡¡¡¡private void fastRemove(int index) {}
¡¡¡¡ËùÒÔ£¬²úÉúConcurrentModificationExceptionµÄÔÒò¾ÍÊÇ£º
¡¡¡¡Ö´ÐÐremove(Object o)·½·¨Ö®ºó£¬modCountºÍexpectedModCount²»ÏàµÈÁË¡£È»ºóµ±´úÂëÖ´Ðе½next()·½·¨Ê±£¬ÅжÏÁËcheckForComodification()£¬·¢ÏÖÁ½¸öÊýÖµ²»µÈ£¬¾ÍÅ׳öÁ˸ÃException¡£
¡¡¡¡Òª±ÜÃâÕâ¸öException£¬¾ÍÓ¦¸ÃʹÓÃremove()·½·¨¡£
¡¡¡¡ÕâÀïÎÒÃǾͲ»¿´add(Object o)·½·¨ÁË£¬Ò²ÊÇͬÑùµÄÔÒò£¬µ«Ã»ÓжÔÓ¦µÄadd()·½·¨¡£Ò»°ãÂ¾ÍÁí½¨Ò»¸öListÁË
¡¡¡¡ÏÂÃæÊÇÍøÉÏµÄÆäËû½âÊÍ£¬¸üÄÜ´Ó±¾ÖÊÉϽâÊÍÔÒò£º
¡¡¡¡Iterator Êǹ¤×÷ÔÚÒ»¸ö¶ÀÁ¢µÄÏß³ÌÖУ¬²¢ÇÒÓµÓÐÒ»¸ö mutex Ëø¡£ Iterator ±»´´½¨Ö®ºó»á½¨Á¢Ò»¸öÖ¸ÏòÔÀ´¶ÔÏóµÄµ¥Á´Ë÷Òý±í£¬µ±ÔÀ´µÄ¶ÔÏóÊýÁ¿·¢Éú±ä»¯Ê±£¬Õâ¸öË÷Òý±íµÄÄÚÈݲ»»áͬ²½¸Ä±ä£¬ËùÒÔµ±Ë÷ÒýÖ¸ÕëÍùºóÒÆ¶¯µÄʱºò¾ÍÕÒ²»µ½Òªµü´úµÄ¶ÔÏó£¬ËùÒÔ°´ÕÕ fail-fast ÔÔò Iterator »áÂíÉÏÅ׳ö java.util.ConcurrentModificationException Òì³£¡£
¡¡¡¡ËùÒÔ Iterator ÔÚ¹¤×÷µÄʱºòÊDz»ÔÊÐí±»µü´úµÄ¶ÔÏ󱻸ıäµÄ¡£µ«Äã¿ÉÒÔʹÓà Iterator ±¾ÉíµÄ·½·¨ remove() À´É¾³ý¶ÔÏó£¬ Iterator.remove() ·½·¨»áÔÚɾ³ýµ±Ç°µü´ú¶ÔÏóµÄͬʱά»¤Ë÷ÒýµÄÒ»ÖÂÐÔ¡£
À©Õ¹ÔĶÁ£ºRemoveAll ·½·¨
RemoveAll ·½·¨´ÓÒ»¸ö Dictionary ¶ÔÏóÖÐɾ³ýËùÓеÄÖ÷¼ü£¬ÌõÄ¿¶Ô¡£ object.RemoveAll( ) ÆäÖÐ object ×ÜÊÇÒ»¸ö Dictionary ¶ÔÏóµÄÃû³Æ¡£ ˵Ã÷ ÏÂÃæÕâ¶Î´úÂë˵Ã÷ÁË RemoveAll ·½·¨µÄÓ÷¨£º var a, d, i;// ´´½¨Ò»Ð©±äÁ¿¡£ d = new ActiveXObject("Scripting.Dictionary")¡£
e.
o
×searchÈsearchÒ Mortgages ³ Findmortgagehomemortgages Ï Findmortgagehomemortgages µ Home Î Mortgages Ìsearch
e.
o
×searchÈsearchÒ Mortgages ³ Findmortgagehomemortgages Ï Findmortgagehomemortgages µ Home Î Mortgages Ìsearch