(→Leitura adicional) |
|||
Line 22: | Line 22: | ||
== Leitura adicional == | == Leitura adicional == | ||
− | + | Ver o manual de Java, para os conceitos acima. | |
+ | * http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html | ||
+ | * http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html | ||
[[Category:Ensino]] | [[Category:Ensino]] | ||
[[Category:PO]] | [[Category:PO]] |
A tarefa nestes exemplos é definir um gato iterável.
Iterar implica a capacidade de obter múltiplas entidades a partir de um gato. Embora seja perfeitamente possível definir iteradores independentes da linguagem Java, é mais conveniente usar os conceitos Java para iteração, pois permitem utilizar algoritmos pré-definidos para iteradores (tirando partido do polimosfismo) e utilizar a sintaxe especial for-each, aplicável a entidades iteráveis e arrays (i.e., entidade primitivas com dimensão fixa).
Assim, serão implementadas duas interfaces pré-definidas em Java. A primeira das interfaces é java.lang.Iterable<T> e é implementada pelas classes que representam, em cada caso, o conceito de gato. Em geral, esta interface é implementada por qualquer entidade que representa um qualquer tipo de colecção de objectos.
A segunda interface é java.util.Iterator<T> e é implementada pelos iteradores definidos para as entidades iteráveis. Note-se que alguns dos exemplos de implementação serão internos, embora esta interface seja exterior a todas as classes.
Ver o manual de Java, para os conceitos acima.