Tubo Galera estou montando um algoritimo em java.
estou usando Swith Case e me deu uma dúvida:
Eu tenho como usar o if dentro do Swith Case?
eu fiz o código da seguinte forma fiz um swith com o código desejado, mas como vários códigos repetiam a mensagem eu no meio dele criei uma comparação falando há se de tanto a tanto && de tanto a tanto faça tal coisa. Mas não funciona. Cheguei a fazer outro programa meio parecido mas os if eu usava apenas fora do swith case.
codigo de ex:
/**
*
*/
package com.fiap.ex18;
import javax.swing.JOptionPane;
/**
* @author PAULO
*
* 18. Escreva um programa que leia o código de um determinado produto e mostre a
* sua classificação. Utilize a tabela abaixo como referência:
*
* Código Classificação
*
* 1 Alimento não-perecível
* 2, 3 ou 4 Alimento perecível
* 5 ou 6 Vestuário
* 7 Higiene pessoal
* 8 até 15 Limpeza e utensílios domésticos
* Qualquer outro código
* Inválido
*
*/
public class Ex18 {
public static void main(String[] args) {
short codigo;
codigo = Short.parseShort(JOptionPane.showInputDialog("Digite o Código do Produto Desejado:"));
switch (codigo) {
case 1:
JOptionPane.showMessageDialog(null, "Alimento Não Perecivel");
break;
case 2:
JOptionPane.showMessageDialog(null, "Alimento Perecivel");
if (codigo > 2 && codigo <= 4){
JOptionPane.showMessageDialog(null, "Alimento Perecivel");
}
break;
case 5:
JOptionPane.showMessageDialog(null, "Vestuário");
break;
case 6:
JOptionPane.showMessageDialog(null, "Vestuário");
break;
case 7:
JOptionPane.showMessageDialog(null, "Higiene pessoal");
break;
case 8:
JOptionPane.showMessageDialog(null, "Limpesa e Utensílios Domésticos");
if (codigo > 8 && codigo <= 15){
JOptionPane.showMessageDialog(null, "Limpesa e Utencilios Domésticos");
}
break;
default:
break;
}
if (codigo < 1 && codigo > 15){
JOptionPane.showMessageDialog(null, "Código Inválido");
}
}
}
fico no aguardo de uma ajuda.