0
Good night,
I have a Master Class:
import static javax.swing.JOptionPane.*;
import java.util.ArrayList;
import java.util.List;
import static java.lang.Integer.parseInt;
public class Principal {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Imovel> lista1 = new ArrayList<>();
List<Locacao> lista2 = new ArrayList<>();
Imovel imovel = new Imovel(0, 0, 0, false);
Imobiliaria imobiliaria = new Imobiliaria();
int opcao = 0;
do {
try {
opcao = parseInt(showInputDialog(Imobiliaria.menu()));
if(opcao < 1 || opcao >6) {
throw new OpcaoInvalidaException("Opcao Invalida");
} else {
switch(opcao) {
case 1:
Imobiliaria.registrarImovel(imovel);
break;
case 2:
Imobiliaria.ListarDisponivel(lista1);
break;
}
}
}catch (NumberFormatException e) {
showMessageDialog(null, e);
}
catch(OpcaoInvalidaException e) {
showMessageDialog(null, e);
}
} while(opcao != 6);
}
}
And I have a class called Immovable :
public class Imovel {
private int codigo;
private int metragem;
private double valorMetroQuadrado;
private boolean disponivel;
public Imovel(int codigo, int metragem, double valorMetroQuadrado, boolean disponivel) {
super();
this.codigo = codigo;
this.metragem = metragem;
this.valorMetroQuadrado = valorMetroQuadrado;
this.disponivel = disponivel;
disponivel = true;
}
@Override
public String toString() {
String aux = "";
String dispo = "O quarto está disponivel";
aux += "O codigo do imovel é " + codigo + "\n";
aux += "A metragem do imovel é " + metragem + "\n";
aux += "O valor do metro quadrado é " + valorMetroQuadrado + "\n";
if(disponivel == false) {
dispo = "O quarto não está disponivel";
}
aux += dispo;
return aux;
}
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public int getMetragem() {
return metragem;
}
public void setMetragem(int metragem) {
this.metragem = metragem;
}
public double getValorMetroQuadrado() {
return valorMetroQuadrado;
}
public void setValorMetroQuadrado(double valorMetroQuadrado) {
this.valorMetroQuadrado = valorMetroQuadrado;
}
public boolean isDisponivel() {
return disponivel;
}
public void setDisponivel(boolean disponivel) {
this.disponivel = disponivel;
}
}
A Commercial class:
public class Comercial extends Imovel {
private int numeroDeSalas;
public Comercial(int codigo, int metragem, double valorMetroQuadrado, boolean disponivel, int numeroDeSalas) {
super(codigo, metragem, valorMetroQuadrado, disponivel);
this.numeroDeSalas = numeroDeSalas;
}
@Override
public String toString() {
String aux = "";
aux += "O numero de sala é " + numeroDeSalas + "\n";
return aux;
}
public int getNumeroDeSalas() {
return numeroDeSalas;
}
public void setNumeroDeSalas(int numeroDeSalas) {
this.numeroDeSalas = numeroDeSalas;
}
public double calcularAluguel() {
return getMetragem()*getValorMetroQuadrado()+550*getNumeroDeSalas();
}
}
Another class called Residential:
public class Residencial extends Imovel {
private int numeroDeQuartos;
public Residencial(int codigo, int metragem, double valorMetroQuadrado, boolean disponivel, int numeroDeQuartos) {
super(codigo, metragem, valorMetroQuadrado, disponivel);
this.numeroDeQuartos = numeroDeQuartos;
}
@Override
public String toString() {
String aux = "";
aux += "O numero de quartos é " + numeroDeQuartos + "\n";
return aux;
}
public int getNumeroDeQuartos() {
return numeroDeQuartos;
}
public void setNumeroDeQuartos(int numeroDeQuartos) {
this.numeroDeQuartos = numeroDeQuartos;
}
public double calcularAluguel() {
return getMetragem()*getValorMetroQuadrado()+300*getNumeroDeQuartos();
}
}
and finally the most important Real Estate
import java.io.ObjectInputStream.GetField;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import static java.lang.Integer.parseInt;
import static java.lang.Long.parseLong;
import static javax.swing.JOptionPane.showInputDialog;
import static javax.swing.JOptionPane.showMessageDialog;
public class Imobiliaria {
private static List<Imovel> lista1 = new ArrayList<Imovel>();
private static List<Locacao> lista2 = new ArrayList<Locacao>();
private static Residencial residencial = new Residencial(0, 0, 0, false, 0);
static String menu() {
String aux = "";
aux += "1 - Registrar Imovel \n";
aux += "2 - Listar Imoveis disponiveos \n";
aux += "3 - Listar Imoveis ALUGADOS \n";
aux += "4 - Realizar Locação \n";
aux += "5 - Finalizar Locação \n";
aux += "6 - Finalizar \n";
return aux;
}
public static void registrarImovel(Imovel imovel) throws OpcaoInvalidaException {
int codigo, metragem,opcao = 0,numeroDeQuartos,numeroDeSalas;
boolean disponivel;
double valorMetroQuadrado;
opcao = parseInt(showInputDialog("Qual tipo de imovel?\n1. Residencial\n2. Comercial"));
if(opcao < 1 ||opcao > 2) {
throw new OpcaoInvalidaException("Opcao Invalida");
} else if(opcao == 1) {
codigo = parseInt(showInputDialog("Digite o código do imovel"));
metragem = parseInt(showInputDialog("Digite a metragem do imovel"));
valorMetroQuadrado = parseInt(showInputDialog("Digite o valor do metro quadrado"));
numeroDeQuartos = parseInt(showInputDialog("Digite o numero de quartos"));
disponivel = true;
lista1.add(new Residencial(codigo, metragem, valorMetroQuadrado, disponivel, numeroDeQuartos));
}
else {
codigo = parseInt(showInputDialog("Digite o código do imovel"));
metragem = parseInt(showInputDialog("Digite a metragem do imovel"));
valorMetroQuadrado = parseInt(showInputDialog("Digite o valor do metro quadrado"));
numeroDeSalas = parseInt(showInputDialog("Digite o numero de quartos"));
disponivel = true;
lista1.add(new Comercial(codigo, metragem, valorMetroQuadrado, disponivel, numeroDeSalas));
}
}
public static void ListarDisponivel(List<Imovel> lista1) {
String ListarResidencial = "";
String ListarComercial;
ListarResidencial += "IMOVEIS RESIDENCIAL -----------------";
for(Imovel imovel : lista1) {
ListarResidencial += "teste";
ListarResidencial += imovel.getCodigo();
ListarResidencial += imovel.getMetragem();
ListarResidencial += imovel.getValorMetroQuadrado();
ListarResidencial += residencial.getNumeroDeQuartos();
}
showMessageDialog(null, ListarResidencial);
}
}
In the Real Estate class there is a menu where I create and ask if it is residential or commercial so I take the data and add in the list with list.
however after that I try to return this data, but the data is not returned, nor null appears anything just closes...