Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 14824|Отговор: 0

[Комуникация] java:list和set集合的遍历

[Копирай линк]
Публикувано в 4.01.2015 г. 13:30:48 ч. | | |

Има три начина да преминете през Списък   
   
   <A> List list = нов ArrayList<A>();   
   list.add(нов A());   
   list.add(нов A());   
   ...   
   
  Първият тип:   
   for(Iterator<A> it = list.iterator();    it.hasNext();    )    {   
       ....   
   }   
   Този път е в цикъл
В същото време, ако искате да премахнете елемент в процеса на удоволствие, можете да извикате само метода it.delete, не можете да използвате метода list.demove, в противен случай ще възникне грешка при конкурентен достъп.   
Но съвместимостта е най-добрата, подходяща за колекцията
   
   Вторият тип:   
   for(a a : list) {   
       .....   
   }   
  За всеки метод все още има итератор, първият се извиква вътрешно, супата не се променя, а има и други ограничения на този кръгов метод, затова не се препоръчва да се използва   
  Може да се използва само над JK1.5 при лоша съвместимост. Най-добре е да използвате този комплект.

   Третият тип:   
   for(int i=0;    i<list.size();    i++) {   
       a a = list.get(i);   
       ...   
   }   
  за цикъл, преминаването през съдържанието на колекция от списъци работи само за Списък, тъй като Лист е подредена колекция
, вътрешната не е заключена, най-висока ефективност, но при писане на мултитрединг трябва да се вземе предвид проблемът с конкурентните операции!

Преминаването през колекция от множества е по същия начин като на списъка, но не можеш да използваш цикъл for за итеративно преминаване през колекция от множества, защото няма метод get() в колекцията на множеството.
  Но може да се циклира с подобрения
  Колекцията Traverse the Set
  <String> Set set = нов HashSet<String>();
  set.add("qqq");
  set.add("www");
  set.add("eee");
  set.add("rrr");
  
  for(String s : set){
   System.out.println("set="+s);
  }






Предишен:Преминаване на колекцията от списъци в Java и сравнителен анализ на два класа на имплементация
Следващ:Той е по-голям брат, той е лоли, защо ѝ даде чаша?
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com