12.07.2015 Views

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

k19-k11-orientacao-a.. - Departamento de Sistemas e Computação

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

COLLECTIONS 15816 }1718 public static long contains ( Collection colecao ) {1920 int size = 100000;2122 for ( int i = 0; i < size ; i ++) {23 colecao . add (i);24 }2526 long inicio = System . currentTimeMillis ();2728 for ( int i = 0; i < size ; i ++) {29 colecao . contains (i);30 }3132 long fim = System . currentTimeMillis ();3334 return fim - inicio ;35 }36 }Código Java 18.19: TestaContains.javaLaço foreachAs listas po<strong>de</strong>m ser iteradas com um laço for tradicional.1 List lista = ...23 for ( int i = 0; i < lista . size (); i ++) {4 Object x = lista . get (i);5 }Código Java 18.20: for tradicionalPorém, como os conjuntos não são baseados em índice eles não po<strong>de</strong>m ser iterados com umlaço for tradicional. Além disso, mesmo para as listas o for tradicional nem sempre é eficiente poiso método get() para <strong>de</strong>terminadas implementações <strong>de</strong> lista é lento (ex: LinkedList).A maneira mais eficiente para percorrer uma coleção é utilizar um laço foreach.1 Collection colecao = ...23 for ( Object x : colecao ) {45 }Código Java 18.21: foreachGenericsAs coleções armazenam referências <strong>de</strong> qualquer tipo. Dessa forma, quando recuperamos umelemento <strong>de</strong> uma coleção temos que trabalhar com referências do tipo Object.1 Collection colecao = ...2158 www.<strong>k19</strong>.com.br

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!