Ola pessoal, estou com dúvidas em Array, aqui vai o enunciado dentre tantos do projeto.
Modificar a Classe CiaAerea para:
a. Adicionar como atributos:
i. Array de locais (Aeroportos) onde a cia aérea atua;
ii. Array de Voos programados.
b. Modificar o Construtor da Classe para instanciar os arrays de Aeroportos e de Vôos.
c. Programar um método adicionarLocal() que recebe como parâmetro uma instancia de Aeroporto e adiciona-a à próxima posição disponível no array.
d. Programar um método adicionarVooProgramado() que recebe como parâmetro uma instancia de vôo e adiciona-a à próxima posição disponível no array. Observação: um voo não pode não ter como origem ou destino um aeroporto cujo o qual a cia aérea não atua;
e. Programar um método localizarLocal(): boolean que recebe como parâmetro nome da cidade ou código do Aeroporto, devolvendo true se este local é atendido ou false, caso contrário.
f. Programar um método localizarVoo(): voo que recebe como parâmetro um numero de voo e uma data, devolvendo a instância de voo localizada. Se nenhuma instancia for localizada, deve-se retornar null.
A parte em negrito eu já fiz. Falta essa parte sem ser negrito, se puderem me explicitar, citando exemplos…
Obrigado galera.
Dica: normalmente, usa-se uma variável de instância (de tipo int) auxiliar, para indicar onde é a próxima posição disponível de um array.
Se você definiu um array
privateAeroporto[]aeroportos=newAeroporto[100];
deve também definir uma variável:
privateintnAeroportos=0;
Essa variável indica quantos aeroportos estão correntemente definidos na variável “aeroportos”. A cada vez que você cria um novo aeroporto, faz algo como:
aeroporto[nAeroportos]=newAeroporto();nAeroportos=nAeroportos+1;if(nAeroportos>=100){Erro"Só podem ser cadastrados 100 aeroportos no máximo";}
ou coisa parecida
T
thedark.10013
De uma olhada em meu código.
Declarei o ArrayList.
Estou com dúvida no item c, como receber como parâmetro uma instancia de Aeroporto e adiciona-a à próxima posição disponível no array.
importjava.util.ArrayList;importjava.util.List;publicclassCiaAerea{List<Aeroporto>local=newArrayList<Aeroporto>();List<Voo>vooProgramados=newArrayList<Voo>();privateStringnome,codIata;publicCiaAerea(){}//construtor para chamar depois na classe teste, no obj 'aeroCps'publicCiaAerea(Stringnome,StringcodIata){this.nome=nome;this.codIata=codIata;local.add(newAeroporto("VCP","Viracopos","Campinas","São Paulo"));local.add(newAeroporto("CGH","Congonhas","São Paulo","Sao Paulo"));local.add(newAeroporto("GIG","Antonio Carlos Jobim","Rio de Janeiro","Rio de Janeiro"));local.add(newAeroporto("POA","Salgado Filho","Porto Alegre","Rio Grande do Sul"));vooProgramados.add(newVoo(100,550.00,455,"Viracopos","Salgado Filho","Confirmado"));vooProgramados.add(newVoo(100,550.00,455,"Congonhas","Antônio Carlos Jobim","Confirmado"));vooProgramados.add(newVoo(100,550.00,455,"Congonhas","Salgado Filho","Confirmado"));}/*c. Programar um método adicionarLocal() que recebe como parâmetro uma instancia de Aeroporto e adiciona-a à próxima posição disponível no array.*/publicvoidadicionarLocal(Aeroportoaeroporto){}publicvoidadicionarVooProgramado(Voovoo){}publicbooleanlocalizarLocal(Stringiata){}publicvoidsetNome(Stringnome){this.nome=nome;}publicStringgetNome(){returnnome;}publicvoidsetCodIata(StringcodIata){this.codIata=codIata;}publicStringgetCodIata(){returncodIata;}}
S
Sem_Nome
Para adicionar um objeto a um ArrayList você deve utilizar o metodo add(E e).