Galera ainda estou estudando java, eu vi um exercicio e tava fazendo, cheguei na ultima parte e fiz mas da dando errado ai estou postando para ver se alguem me ajuda!
public class Casa2 {
public String cor;
public int totalPortas;
public Porta[] portas;
public void pinta(String s){
cor = s;
}
public void adicionaPortas(Porta p){
for (int i = 0; i < portas.length; i++) {
portas[i] = p;
}
}
public int totalDePortas(){
return portas.length;
}
public int qntsPortasEstaoAbertas(){
for (int i = 0; i < portas.length; i++) {
if(portas[i].estaAberta() == true){
totalPortas = totalPortas + 1;
}
}
return totalPortas;
}
}
public class Porta {
public boolean aberta;
public String cor;
public double dimensaoX;
public double dimensaoY;
public double dimensaoZ;
public void abre(){
aberta = true;
}
public void fecha(){
aberta = false;
}
public void pinta(String s){
cor = s;
}
public boolean estaAberta(){
return aberta;
}
}
public class Teste6 {
public static void main(String[] args) {
Casa2 casa = new Casa2();
casa.pinta("Vermelho");
Porta p1 = new Porta();
Porta p2 = new Porta();
Porta p3 = new Porta();
casa.portas = new Porta[3];
p1.abre();
p2.fecha();
p3.abre();
casa.adicionaPortas(p1);
casa.adicionaPortas(p2);
casa.adicionaPortas(p3);
System.out.println(casa.qntsPortasEstaoAbertas());
System.out.println(casa.totalDePortas());
}
}
O Erro todo é na parte onde mostra a quantidade de portas abertas nunca bate o valor certo ja mudei q só, qual o problema??