MAB 240 - Computação II

Laboratório 9 - 23/11/2016

No laboratório de hoje vocês irão exercitar a criação de classes e interfaces genéricas ou parametrizadas. Baixe o projeto BlueJ do laboratório. Como sempre, caso você esteja no Eclipse copie os arquivos .java para um projeto Eclipse recém-criado.

1. Converta as classes Node, StackLinked e QueueLinked para classes genéricas, cujo parâmetro representa respectivamente o tipo do item do nó e o tipo dos elementos guardados na pilha e fila.

2. Faça QueueLinked implementar a interface Iterable<E> vista em sala (você vai ter que criar uma implementação adequada de Iterator<E> também).

3. Implemente o método push(Collection<E> col) em StackLinked, que empilha todos os elementos da coleção col. Modifique o argumento de tipo de Collection<E> para usar um coringa.

4. Implemente o método dequeueAll(Collection<E> col) em QueueLinked, que move todos os elementos da fila para a coleção col (use o método dequeueAll() já presente como base). Modifique o argumento de tipo de Collection<E> para usar um coringa.

5. Crie uma função genérica createQueue(E... args) em QueueLinked que instancia uma fila e a preenche os argumentos passados.


Última Atualização: 2016-12-09 11:49