Pessoal,
A segunda lista sobre ArrayList está disponível em http://www.4shared.com/file/140209102/98d85f33/Lista_ArrayList2.html
Abaixo as questões da lista:
Observação: Essa lista é continuação da Lista_ArrayList.doc, portanto é necessário que a lista Lista_ArrayList.doc tenha sido resolvida.
1. Altere a Menu.
a. Acrescente no método exibir mensagens que estão em negrito:
"Escolha uma das opções abaixo:"
"Digite 1 para cadastrar um animal"
"Digite 2 para excluir um animal"
"Digite 3 para listar todos os animais cadastrados"
"Digite 4 para cadastrar um veterinário"
"Digite 5 para excluir um veterinário"
"Digite 6 para listar todos os veterinarios cadastrados"
"Digite 7 para cadastrar um animal sob a responsabilidade de determinado veterinario"
"Digite 8 para excluir um animal sob a responsabilidade de determinado veterinario"
"Digite 9 executar os métodos comer() e comunicar() de determinado animal que esta sob a responsabilidade de determinado veterinario"
"Digite 0 para sair"
2. Na classe Veterinario faça:
a. Remova o atributo meuAnimal;
b. Remova os métodos setMeuAnimal e getMeuAnimal. Eles deixarão de ser necessário, pois iremos criar um ArrayList para armazenar vários animais que o veterinário será responsável.
c. Crie uma variável de instancia chamada ArraymeusAnimais do tipo ArrayList. O ArraymeusAnimais representa todos os animais que o veterinário é responsável no zoológico .
d. Altere os métodos alimentarAnimal() e banharAnimal() para que percorra todos os animais do veterinário. Ao invés de chamar o método getNome() e comer() do atributo meuAnimal, o código deve chamar getNome() e comer() dos animais contidos em ArraymeusAnimais.
e. Acrescente na os seguintes métodos: localizarAnimal_do_Veterinario, cadastrarAnimal_do_Veterinario, excluirAnimal_do_Veterinario, qtdAnimal_do_Veterinario, e listarAnimal_do_Veterinario
e1. O método localizarAnimal_do_Veterinario deve receber como parâmetro o nome do Animal que se deseja localizar no ArraymeusAnimais. Se existir retornar uma referencia para o objeto, senão retornar null;
e2. O método cadastrarAnimal_do_Veterinario deve receber como parâmetro um Animal e inserir esse objeto em ArraymeusAnimais;
e3. O método excluirAnimal_do_Veterinario deve receber como parâmetro um Animal que se deseja excluir e remove-lo do ArraymeusAnimais. Esse método deve usar o método localizarAnimal_do_Veterinario para retornar o animal caso exista dentro do ArrayList;
e4. O método qtdAnimal_do_Veterinario indica quantos animais foram cadastrados para o veterinário. O método deve verificar o tamanho do arraylist ArraymeusAnimais e retornar esse número.
e5. O método listarAnimal_do_Veterinario deve percorrer ArraymeusAnimais e exibir o nome, cor, tamanho e peso de todos os animais que o veterinário é responsável;
3. Acrescente na classe AdmZoo uma variável de instancia chamada ArrayVeterinario do tipo ArrayList.
4. Acrescente na classe AdmZoo os seguintes métodos: localizarVeterinario, cadastrarVeterinario, excluirVeterinario, qtdVeterinario, e listarVeterinario.
a. O método localizarVeterinario deve receber como parâmetro o nome do Veterinário que se deseja localizar no ArrayVeterinario. Se existir retornar uma referencia para o objeto, senão retornar null;
b. O método cadastrarVeterinario deve receber como parâmetro um Veterinário com o nome e idade inserir esse objeto em ArrayVeterinario;
c. O método excluirVeterinario deve receber como parâmetro um Veterinario que se deseja excluir e remove-lo do ArrayVeterinario. Esse método deve usar o método localizar para saber a localização dentro do ArrayList;
d. O método qtdVeterinario indica quantos veterinário forma cadastrados. O método deve verificar o tamanho do arraylist ArrayVeterinario e retornar esse número.
e. O método listarVeterinario deve percorrer ArrayVeterinario e exibir o nome, idade e o nome e a cor de todos os animais que o veterinário é responsável;
5. Na classe Zoo faça:
a. Insira cases no switch para implementar as novas funcionalidades adicionadas no menu .