Bom dia Pessoal, eu estou procurando aprender um pouco mais de JAVA, e preciso implementar um cód de uma locadora de veículos, no qual eu já consegui cadastrar veículos populares, médios e grandes, e também listar todos os veículos cadastrados.
Porém não faço ideia de como eu poderia fazer as duas ultimas partes:
1° Pesquisar automóveis informando valor máximo pretendido para a diária, e efetuar uma locação
- o sistema mostra uma lista dos automóveis disponíveis considerando o valor máximo informado
- o usuário seleciona um deles
- o usuário informa o número de dias de locação e a data atual.
2° Devolver um automóvel informando a data da devolução, e o sistema deve informar o valor a ser pago
também preciso usar o método Tostring
segue meu cód:
classe principal:
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Principal {
public static void main(String[] args) {
int op;
String placa, capacidade, anocarro, valordia, placa1, capacidade1, anocarro1, valordia1, placa2, capacidade2, anocarro2, valordia2 ;
Scanner sc = new Scanner(System.in);
ArrayList<Popular> populares = new ArrayList<Popular>();//Array q armazena os carros populares
ArrayList<Medio> medios = new ArrayList<Medio>();//Array q armazena os carros médios
ArrayList<Grande> grandes = new ArrayList<Grande>();//Array q armazena os carros grandes
do{ //repete o menu até q seja selecionado a opção 10 - sair
System.out.println("-------------------------");
System.out.println("MENU PRINCIPAL LOCADORA DE VEICULOS");
System.out.println("-------------------------");
System.out.println("1 - CADASTRAR CARROS POPULARES");
System.out.println("2 - CADASTRAR CARROS MEDIOS");
System.out.println("3 - CADASTRAR CARROS GRANDES");
System.out.println("4 - LISTAR TODOS OS CARROS CADASTRADOS NA LOCADORA DE VEICULOS");
System.out.println("5 - Pesquisar automóveis informando valor máximo pretendido para a diária, e efetuar uma locação");
System.out.println("6 - Devolver automóvel informando a data da devolução");
System.out.println("10 - SAIR");
System.out.println("Digite sua opção: ");
op = sc.nextInt();
switch (op) {
case 1:
Popular p1 = new Popular(); //buffer de popular
System.out.println("Digite a placa do carro popular: ");
System.out.flush(); //limpa o buffer do teclado
placa = sc.next();
p1.setPlaca(placa);
System.out.println("Digite a capacidade de pessoas no carro popular: ");
System.out.flush();
capacidade = sc.next();
p1.setCapacidade(capacidade);
System.out.println("Digite o ano do carro popular: ");
System.out.flush();
anocarro = sc.next();
p1.setAnocarro(anocarro);
System.out.println("valor base da diária de locação do carro popular: ");
System.out.flush();
valordia = sc.next();
p1.setValordia(valordia);
populares.add(p1);
break;
case 2:
Medio p2 = new Medio(); //buffer de Medio
System.out.println("Digite a placa do carro médio: ");
System.out.flush(); //limpa o buffer do teclado
placa1 = sc.next();
p2.setPlaca1(placa1);
System.out.println("Digite a capacidade de pessoas no carro médio: ");
System.out.flush();
capacidade1 = sc.next();
p2.setCapacidade1(capacidade1);
System.out.println("Digite o ano do carro médio: ");
System.out.flush();
anocarro1 = sc.next();
p2.setAnocarro1(anocarro1);
System.out.println("valor base da diária de locação do carro médio: ");
System.out.flush();
valordia1 = sc.next();
p2.setValordia1(valordia1);
medios.add(p2);
break;
case 3:
Grande p3 = new Grande(); //buffer de Grande
System.out.println("Digite a placa do carro grande: ");
System.out.flush(); //limpa o buffer do teclado
placa2 = sc.next();
p3.setPlaca2(placa2);
System.out.println("Digite a capacidade de pessoas no carro grande: ");
System.out.flush();
capacidade2 = sc.next();
p3.setCapacidade2(capacidade2);
System.out.println("Digite o ano do carro grande: ");
System.out.flush();
anocarro2 = sc.next();
p3.setAnocarro2(anocarro2);
System.out.println("valor base da diária de locação do carro grande: ");
System.out.flush();
valordia2 = sc.next();
p3.setValordia2(valordia2);
grandes.add(p3);
break;
case 4:
for (Popular popular : populares) {
System.out.println(" ");
System.out.printf("placa do carro popular: ");
System.out.println(popular.getPlaca());
System.out.printf("capacidade de pessoas no carro popular: ");
System.out.println(popular.getCapacidade());
System.out.printf("ano do carro popular: ");
System.out.println(popular.getAnocarro());
System.out.printf("Valor da diária do carro popular: ");
System.out.println(popular.getValordia());
System.out.println(" ");
}
for (Medio medio : medios) {
System.out.println(" ");
System.out.printf("placa do carro médio: ");
System.out.println(medio.getPlaca1());
System.out.printf("capacidade de pessoas no carro médio: ");
System.out.println(medio.getCapacidade1());
System.out.printf("ano do carro médio: ");
System.out.println(medio.getAnocarro1());
System.out.printf("Valor da diária do carro médio: ");
System.out.println(medio.getValordia());
System.out.println(" ");
}
for (Grande grande : grandes) {
System.out.println(" ");
System.out.printf("placa do carro popular: ");
System.out.println(grande.getPlaca2());
System.out.printf("capacidade de pessoas no carro popular: ");
System.out.println(grande.getCapacidade2());
System.out.printf("ano do carro popular: ");
System.out.println(grande.getAnocarro2());
System.out.printf("Valor da diária do carro popular: ");
System.out.println(grande.getValordia2());
System.out.println(" ");
}
break;
case 5://Pesquisar automóveis informando valor máximo pretendido para a diária, e efetuar uma locação
break;
case 6: //Devolver automóvel informando a data da devolução
break;
case 10:
System.out.println("Saindo..");
System.exit(0);
break;
default:
System.out.println("Opção inválida!");
break;
}
}while (op!=10);
}
}
classe carro popular:
public class Popular {
private String placa;
private String capacidade;
private String anocarro;
private String valordia;
public String getPlaca() {
return placa;
}
public void setPlaca(String placa) {
this.placa = placa;
}
public String getCapacidade() {
return capacidade;
}
public void setCapacidade(String capacidade2) {
this.capacidade = capacidade2;
}
public String getAnocarro() {
return anocarro;
}
public void setAnocarro(String anocarro) {
this.anocarro = anocarro;
}
public String getValordia() {
return valordia;
}
public void setValordia(String valordia) {
this.valordia = valordia;
}
}
classe carro médio:
public class Medio {
private String placa1;
private String capacidade1;
private String anocarro1;
private String valordia1;
public String getPlaca1() {
return placa1;
}
public void setPlaca1(String placa1) {
this.placa1 = placa1;
}
public String getCapacidade1() {
return capacidade1;
}
public void setCapacidade1(String capacidade21) {
this.capacidade1 = capacidade21;
}
public String getAnocarro1() {
return anocarro1;
}
public void setAnocarro1(String anocarro1) {
this.anocarro1 = anocarro1;
}
public String getValordia() {
return valordia1;
}
public void setValordia1(String valordia1) {
this.valordia1 = valordia1;
}
}
classe carro grande:
public class Grande {
private String placa2;
private String capacidade2;
private String anocarro2;
private String valordia2;
public String getPlaca2() {
return placa2;
}
public void setPlaca2(String placa2) {
this.placa2 = placa2;
}
public String getCapacidade2() {
return capacidade2;
}
public void setCapacidade2(String capacidade22) {
this.capacidade2 = capacidade22;
}
public String getAnocarro2() {
return anocarro2;
}
public void setAnocarro2(String anocarro2) {
this.anocarro2 = anocarro2;
}
public String getValordia2() {
return valordia2;
}
public void setValordia2(String valordia2) {
this.valordia2 = valordia2;
}
}
Se alguém conseguir me ajudar eu agradeço!