Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NeoFe

[Resolvido] Por que ele executa apenas o ultimo case ?

Recommended Posts

import javax.swing.*;

public class Programa1 {

 

public static void main(String[] args) {

Radio radio = new Radio();

TV tv = new TV();

String marca="";

String modelo="";

int bot;

int botR;

int botT;

 

do{

bot = Integer.parseInt(JOptionPane.showInputDialog(null, "Simulador de Aparelho Eletrico \n\n" + "1.Radio \n" + "2.TV \n" + "3.Finaliza Simulador"));

switch (bot){

case 1:{

//marca = JOptionPane.showInputDialog (null,"Qual a marca do Radio" );

//modelo = JOptionPane.showInputDialog (null,"Qual o modelo do Radio" );

radio.setMarca("Sony");

radio.setModelo("Vayo Explode");

do {

botR = Integer.parseInt(JOptionPane.showInputDialog(null,radio.getStatus() +"\n" + "1.Liga/Desliga \n" +

"2.Mute \n" +

"3.Volume +\n" +

"4.Volume -\n" +

"5.Tunner +\n" +

"6.Tunner -\n" +

"7.Band\n" +

"8.Sair"));

switch (botR){

case 1:{ radio.setPower();

}

}

 

if (radio.getPower()){

switch (botR){

case 2:{ radio.setMudo();

}

case 3:{ radio.setAumentarVolume();

}

case 4:{ radio.setDiminuirVolume();

}

case 5:{ radio.setAumentarTunner();

}

case 6:{ radio.setDiminuirTunner();

}

case 7:{ radio.setFrequencia();

}

default:{}

}

}

else

JOptionPane.showMessageDialog(null, "Radio Desligado");

 

}while (botR != 8);

}

case 2:{

//marca = JOptionPane.showInputDialog (null,"Qual a marca da TV");

//modelo = JOptionPane.showInputDialog (null,"Qual o modelo da TV" );

tv.setMarca("Philips");

tv.setModelo("LCD Design Collection");

do {

botT = Integer.parseInt(JOptionPane.showInputDialog(null,tv.getStatus() + "\n" + "1.Liga/Desliga \n" +

"2.Mute \n" +

"3.Volume +\n" +

"4.Volume -\n" +

"5.Canal +\n" +

"6.Canal -\n" +

"7.Sair"));

switch (botT){

case 1:{ tv.setPower();

}

case 3:{ tv.setAumentarVolume();

}

case 4:{ tv.setDiminuirVolume();

}

case 5:{ tv.setAumentarCanal();

}

case 6:{ tv.setDiminuirCanal();

}

default:{}

}

 

}while (botT != 7);

}

}

}while (bot != 3 );

}

}

 

preciso fazer esse exercicio so usando JOptionPane mas o switch executa so o ultimo nas opções de Radio e TV para setar as funções de Volume Canal etc...

e outra coisa quando eu saio das opções de radio ele executa direto a TV sem voltar ao Menu anterior... mas eh para ele executar soh se bot == 2 "case 2:{}"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta colocar um break antes de fechar o case

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.