Boa noite pessoal, estou com algumas duvidas em relação a um projeto que tenho q fazer, se alguém puder ajudar eu agradeço. Então, no projeto tenho que desenvolver um sistema pra automatizar o processo de projeto de cabeamento de uma empresa. O sistema deve conhecer as cidades e regiões englobadas na sua área de cobertura. A classe Cidade tem os seguintes atributos:
int código
String nome
double população
String estado
String país
Região região
A classe Região tem os atributos:
int código
String nome
Tem outra classe que é uma Coleção de Cidades. Dentro dessa classe um dos métodos é o de adicionar cidades. Dai uma primeira dúvida: na hora de adicionar uma cidade como eu faço pra informar o nome da região se a região é do tipo região e não um String? Outra dúvida: onde eu devo adicionar as regiões?
Tem mais coisas pra fazer no projeto e eu já fiz quase toda a base(todas as classes) mas ainda falta esses dois detalhes.
Seria legal usa a coleção MAP ela recebe uma chave e um valor, a chave que no caso seria o codigo voce colocaria pra receber um Int, e o valor(nomeRegiao) String…
Pessoal uma dúvida em relação a array (lá no final do codigo): `
Se alguem puder ajudar, eu agradeço.
public class Classe_Principal {
public static void main(String[] args) {
ColeçãoCidades ListaCidades = new ColeçãoCidades();
//Adicionar regiões
Scanner sc = new Scanner(System.in);
System.out.print("Digite quantas regiões serão criadas: ");
int quant = sc.nextInt();
Scanner sc3 = new Scanner(System.in);
Regiao[] regioes = new Regiao[quant];
for (int i=0;i<quant;i++){
System.out.print("\nInforme o nome da região: ");
String reg = sc3.next();
System.out.print("\nINforme o código da região: ");
int cod = sc3.nextInt();
regioes[i]= new Regiao(cod,reg);
}
// Menu
MenuCidade(ListaCidades);
}
private static void MenuCidade(ColeçãoCidades lista) {
Scanner sc2 = new Scanner(System.in);
int op;
do{
// Apresentar as opções
System.out.print("\n\tSegue abaixo as opções disponíveis para o menu cidade...\n\n" +
"1) Adicionar cidade\n" +
"2) Pesquisar Cidades Por Região\n" +
"3) Pesquisar Cidades Por Estado\n" +
"4) Pesquisar Cidades Por País\n" +
"5) Pesquisar Cidades com Mais de 'X' habitantes\n" +
"6) Remover cidade por nome\n" +
"7) Remover cidade por código\n" +
"8) Pesquisar Cidades Com Nível De Complexidade Maior Que 'X'\n" +
"0) Sair\n");
System.out.print("Digite uma opção: ");
op = sc2.nextInt();
// Verificar se o valor dado está entre as opções válidas...
if((op < 0) || (op > 8)){
System.out.println("\n\tOpção inválida - Tente novamente");
}else
switch(op){
case 1: Cidade cid = new Cidade();
Cidade(cid);
lista.adicionarCidade(cid);
break;
case 2: System.out.print("NOme da região: ");
String regiao = sc2.nextLine();
lista.pesquisaCidadesPorRegião(regiao);
break;
case 3: System.out.print("NOme do Estado: ");
String estado = sc2.nextLine();
lista.pesquisaCidadesPorEstado(estado);
break;
case 4: System.out.print("Nome do País: ");
String pais = sc2.nextLine();
lista.pesquisaCidadesPorPaís(pais);
break;
//case 5:
case 6: System.out.print("Nome da cidade: ");
String nome = sc2.nextLine();
lista.removeCidadePorNome(nome);
break;
case 7: System.out.print("Código da cidade: ");
int codigo = sc2.nextInt();
lista.removeCidadePorCódigo(codigo);
break;
//case 8:
}
}while (op!=0);
}
public static Cidade Cidade (Cidade Cid){
Scanner sc = new Scanner(System.in);
//Apresentar o menu cadastro...
System.out.println("\n\tCadastro de nova cidade");
//Apresentar o menu cadastro...
System.out.println("\n\tCadastro de nova cidade");
System.out.print("\nCódigo da cidade: ");
int codigo = sc.nextInt();
System.out.print("\nNome da cidade: ");
String nome = sc.nextLine();
System.out.print("\nPopulação: ");
double populacao = sc.nextDouble();
System.out.print("\nEstado: ");
String estado = sc.next();
System.out.print("\nPaís: ");
String pais = sc.next();
System.out.print("\nRegião: ");
String reg = sc.next();
//pesquisaRegiao(Regiao[] regioes,reg); //Teria como eu criar um metodo aqui passando o array que eu criei lá em cima e a string que eu digitar? Esse metodo iria pesquisar o array para ver se existe a região informada.
System.out.println("\n\tCadastro realizado com sucesso!!!");
return Cidade;
}
}