Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 14824|Resposta: 0

[Comunicação] java:list和set集合的遍历

[Copiar link]
Publicado em 04/01/2015 13:30:48 | | |

Existem três maneiras de atravessar uma Lista   
   
   <A> Lista lista = nova ArrayList<A>();   
   list.add (novo A());   
   list.add (novo A());   
   ...   
   
  O primeiro tipo:   
   for(<A>Iterator it = list.iterator();    it.hasNext();    )    {   
       ....   
   }   
   Esse caminho é em ciclo
Ao mesmo tempo, se você quiser remover um elemento no processo de prazer, só pode chamar o método it.remove, não pode usar o método list.remove, caso contrário haverá um erro de acesso concorrente.   
Mas a compatibilidade é a melhor, adequada para a coleção da Coleção
   
   O segundo tipo:   
   for(A a : lista) {   
       .....   
   }   
  O método para cada método ainda é um iterador, o primeiro é chamado internamente, e a sopa não é alterada, e há outras limitações desse método circular, então não é recomendado usá-lo   
  Só pode ser usado acima do JK1.5 com fraca compatibilidade. O melhor é usar este

   O terceiro tipo:   
   for(int i=0;    i<list.size();    i++) {   
       A a = list.get(i);   
       ...   
   }   
  para loop, percorrer o conteúdo de uma coleção List funciona apenas para List, porque List é uma coleção ordenada
, o interno não está travado, a maior eficiência, mas ao escrever multithreading, o problema das operações concorrentes deve ser considerado!

Percorrer uma coleção Set é da mesma forma que uma Lista, mas você não pode usar um loop for para iterar por uma coleção Set porque não existe método get() na coleção Set.
  Mas pode ser repetido com aprimoramentos
  Coleção Traverse the Set
  Set<String> set = novo <String>HashSet();
  set.add("qqq");
  set.add("www");
  set.add("eee");
  set.add("rrr");
  
  for(String s : set){
   System.out.println("set="+s);
  }






Anterior:Travessia da coleção de listas em Java e análise comparativa de duas classes de implementação
Próximo:Ele é um irmão mais velho, é uma garota loli, por que ele deu um copo para ela?
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com